PHP заметки

Автор: Aport Суббота, Январь 31st, 2015 Нет комментариев

Рубрика: Язык PHP

Это просто страница с заметками, как говорится все подряд :)

Список опций командной строки - http://www.php.net/manual/ru/features.commandline.options.php :

$ php -r «echo PHP_INT_MAX;»

Выбираем нужную переменную (в мане Переменные переменные)

$zx = 123;
$_POST['x'] = 1;
echo ${‘z’.$_POST['x']};

Выбираем нужную функцию

$isfunc = ‘image’.$format;

@$isfunc($idest,$path_cache,$quality);

Проверяет, присутствует ли в массиве указанный ключ или индекс

array_key_exists(‘my_key’, $in_array)

Находим имя файла — через последнее значение массива

$file_name = current(array_reverse(explode(‘/’,dirname(__FILE__))));

Сравнение значений

Если значение переменной или значение ключа в массиве сравнивается со строкой — применяй сравнение ===, т.к. == не всегда работает правильно, например:

$foo = 0;
if($foo===’on’){ echo 1; }

в случае выше, если через == число сравнивается с строкой, то строка преобразовывается в число, поэтому нужно применять ===

$field_name = ‘user_email’;

$this->fields = array(‘user_email’ => 1);

с if($this->fields[ $field_name ] == ‘pf’){ echo 1; } — тоже сработает как и в примере выше

При сравнении даже строковых чисел с точкой, нужно сравнивать через оператор === потому что:

echo (’19.1′==’19.10′)? true : false;// возвращает true

echo (’19.1′==date(‘j.n’))? true : false;// если j.n сейчас 19.10 — возвращает true

Если нужно строку превратить в число с запятой:

(float)str_replace(‘ ’,», $found['2'][ $k ]);

Проверка на цифру в строке:

if(preg_match(«/[0-9]+/», ‘z1x’)){
echo ‘в строке есть цифра’;
}

Удаляем повторяющиеся БР:

preg_replace(‘/(?:<br[^>]*>\s*)+/i’,'<БР>’, $article);

Удаляем повторящюиеся пробелы:

preg_replace(‘/[\s]{2,}/’, ‘ ‘, $article);

Убираем множество повторяющихся B

$article = preg_replace(‘/(<b>){2,}/i’, ‘<b>’, $article);
$article = preg_replace(‘/(<\/b>){2,}/i’, ‘</b>’, $article);

еще про регулярки:

http://dreamhelg.ru/2010/02/15-regular-expression-for-web-developers/

http://php.spb.ru/php/regexp.html

Странные символы

// HEX-значение «c2″ можно получить через dechex(ord(mb_substr($search,0,1))) а затем добавив к нему \x в итоге «\xc2″
// HEX-значение «A0″ можно получить через javascript функцию escape(this.value) а затем добавив к нему \x в итоге «\xA0″
// для mysql SELECT CONV(ORD(SUBSTRING(description,1,1)),10,16) FROM table WHERE id=12345
$search = trim(str_replace(«\xc2″,’ ‘,str_replace(«\xA0″,’ ‘, $search)));// избавляем поисковую строку от возможных неправильных символов
$string = str_replace(«\xC2\xA0″,» «,$string);
SELECT REPLACE(description, ‘\xc2\xA0′, ‘ ‘) FROM table WHERE id=12345

 

Источник: yapro.ru

Оставить комментарий

Чтобы оставлять комментарии Вы должны быть авторизованы.

Похожие посты