Операции со строками
//удаляем html-теги
$new_str = strip_tags($str);
//удаляем из начала и конца строки пробелы
trim($str);
//Ппреобразуем специальные символы в HTML сущности
htmlspecialchars($str);
//конвертируем windows-1251 в utf-8:
$str = mb_convert_encoding($str, "utf-8", "windows-1251");
//получаем первый символ строки
$s = substr($str, 0, 1);
//получаем первые три символа строки
$s = substr($str, 0, 3);
//получаем второй и третий символы строки
$s = substr($str, 1, 2);
//получаем последний символ строки
$s = substr($str, -1);
//удаляем первый символ строки
$str = substr($str, 1);
//удаляем последний символ строки
$str = substr($str, 0, -1);
//удаляем первый и последний символ строки
$str = substr($str, 1, -1);
Операции с массивами
//разбиваем строку в массив по разделителям
$array = explode('-','a-b-c-d');
//и наоборот
$str = implode('-',$array);
//получаем массив ключей массива
$keys = array_keys($array);
//возвращаем ключ первого найденного значения в массиве
$key = array_search('value', $array);
Сортируем многомерный массив:
//допустим, у нас есть массив $list, каждый элемент которого:
$list[] = array('tag' => $tag, 'count' => $count);
//разбираем на составляющие
$tag = array();
$count = array();
foreach ($list as $key => $l) {
$tag[$key] = $l['tag'];
$count[$key] = $l['count'];
}
//сортируем массив $list по составляющих в порядке приоритета
array_multisort($count, SORT_DESC, $tag, SORT_ASC, $list);
Прочее
Определяем юзер-агента
$isiPad = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'iPad');
$isAndroid = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'Android');
$isiPhone = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'iPhone');
Выводим абсолютный путь к выполняемому файлу
echo realpath(dirname(__FILE__)).'/';
Чтение файла и запись в файл
//запись в файл
$file = realpath(dirname(__FILE__)).'/'.'data.json';
file_put_contents($file,json_encode($array));
//чтение из файла
$json = file_get_contents(realpath(dirname(__FILE__)).'/'.'data.json');
$array= json_decode($json,true);
Обновление версии php в OSX
curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6
export PATH=/usr/local/php5/bin:$PATH
Разворачивание проекта Symfony 2
$ composer install
//migrate db
$ php bin/console doctrine:migrations:migrate
//fill db
$ php bin/console doctrine:fixtures:load
$ php bin/console cache:cl
$ php bin/console assetic:dump
php bin/console doctrine:schema:drop -f &&
php bin/console doctrine:schema:create &&
php bin/console doctrine:fixtures:load -n &&
php bin/console cache:clear --no-warmup &&
php bin/console cache:clear --no-warmup --env=prod
Сканирование изображений в папке
$images = glob($tmp_folder.'/'. "*.{jpg,png,gif}", GLOB_BRACE);