Полезные коды в PHP и MySQL

8.39K
.
За флудли тему п**дес
продолжим ее...
Функция правильных окончаний
автор понятия не имею кто, но очень полезная
function number_end($number, $ending0, $ending1, $ending2)
	{
		$num100 = $number % 100;
		$num10 = $number % 10;
		if($num100>=5 && $num100<=20)
		{
			return $ending0;
		}
		elseif($num10 == 0)
		{
			return $ending0;
		}
		elseif($num10 == 1)
		{
			return $ending1;
		}
		elseif($num10>=2 && $num10 <= 4)
		{
			return $ending2;
		}
		elseif($num10>=5 && $num10 <= 9)
		{
			return $ending0;
		}
		else
		{
			return $ending2;
		}
	}
.
ХЗ, я паскаль знаю...тут много похожего
.
Очистка папки из php-скрипта
$pap = '/путь_до_папки/';
$dir = opendir($pap);
while (false !== ($d = readdir($dir))) {
if (is_file($pap . $d)) {
@chmod($pap . $d, 0777);
unlink($pap . $d);
} 
} 
closedir($dir);
.
Krite
Янулов (23.05.2010/20:27)
Очистка папки из php-скрипта[php]$pap = '/путь_до_папки/';$dir = opendir($pap);while (false !== ($d = readdir($dir))) {if (is_file($pap . $d)) {@chmod($pap . $d, 0777);unlink($pap . $d);} } closedir($
Лучше scandir использовать (PHP5)
.
Wap Master
Какой функцией можно посчитать количество символов в нужной ячейке бд?
.
Мозг не осилил.

Например если у нас файл с расширением .zip , то должно например отображаться из ячейки test слово которое там записано, в таблице down_files будет эта ячейка у каждого файла.
.
Krite
Подсчет веса БД с кэштрованием
function mysql_size()
	{
		global $timesite; //Время сайта
		$dload_cache_time = @filemtime("../cache/mysql_size.tmp");
		$dload_cache_time = $dload_cache_time+(3600*12);
		$dload_cache = @file_get_contents("../cache/mysql_size.tmp");
		if($timesite < $dload_cache_time && !empty($dload_cache))
		{
			$mysql_size = $dload_cache;
		}
		else
		{
			$res = mysql_query("SHOW TABLE STATUS FROM `Название базы`");
			$mysql_size = 0;
			while ($r = mysql_fetch_assoc($res))
			{
				$mysql_size += $r['Data_length'] + $r['Index_length'];
			}
			mysql_free_result();
			$fp_dload_cache = fopen("../cache/mysql_size.tmp","w");
			flock($fp_dload_cache,LOCK_EX); 
			fputs($fp_dload_cache,$mysql_size);
			flock($fp_dload_cache,LOCK_UN);
			fclose($fp_dload_cache);
			chmod("../cache/mysql_size.tmp", 0666);
		}
		return $mysql_size;
	}
.
FlySelf (12.02.2010/11:02)
[php]// Строка кто в онлайн для джона
if ($headmod == 'mainpage') {
$onltime = $realtime - 300;
$req_users = mysql_query("SELECT `id`, `name` FROM `users` WHERE `lastdate` >= $onltime");
На четверке работать будет?
.
Восставший из пепла...
Ruslan777 (02.02.2011/09:37)
На четверке работать будет?
ррр. Это код. Его можешь написать куда хочешь
.
Krite, Вот так, вроде, по короче:
function morph($int, $expressions) {
	if (count($expressions) < 3)
		$expressions[2] = $expressions[1];

	$count = $int % 100;

	if ($count >= 5 && $count <= 20)
		$result = 2;
	else
		$count = $count % 10;

		if ($count == 1)
			$result = 0;
		elseif ($count >= 2 && $count <= 4)
			$result = 1;
		else
			$result = 2; 

	return $int . ' ' . $expressions[ $result ];
}

Пример:
echo morph($count_mail, array('новое сообщение', 'новых сообщения', 'новых сообщений'));


Это из Kohana, вроде..
Всего: 360