Сложение строковых переменных содержащих цифры.

Что делает?

При сложении двух переменных типа String, содержащих в начале этих переменных цифры, эти цифры складываются.

Пример:


$a = "1500 стр.";

$b = "2500 стр.";

echo $a + $b; // 4000

Возможная проблема при использовании.

Данная особенность языка работает только, если цифры находятся сначала строки, если это не так ($a = “количество 1500 страниц”), то сложения цифровых частей строки не произойдет, отбрасывается только правая часть.

Применение.

Основная польза от применения это скорость в сравнении с применением регулярного выражения (“/[0-9]{1,}/i”).  Однако будьте внимательны и применяйте, когда точно уверены, что символов перед цифрами не будет

 
Xo66uT7 Сентябрь 2011MySQL, codelifehack

Времени писать полноценные посты практически нет, ввиду большой загруженности проектами, поэтому буду пробовать новый формат, который я решил назвать codelifehack, это всевозможные полезные советы в областях и языках программирования с которыми мне приходится работать.
Итак первый.

Частично скрываем email’ы, которые получаем из БД.

Что делает?

Скрывает часть символов в email, чтобы нельзя было его использовать в плохих целях.

Пример.

SELECT
 INSERT(user_info.email, 3, 4, '...') AS modif_email,
 user_info.name,
 user_info.surname
 FROM
 user_info

Нас здесь интересует строчка:

SELECT
 INSERT(user_info.email, 3, 4, '...') AS modif_email,

Функция (именно функция, есть еще другой INSERT) INSERT заменяет 4 символа начиная с третьего на символы “…” (три точки) в строке user_info.email. Краткое описание функции INSERT(str,pos,len,newstr)

Возможная проблема при использовании.

Наша замена может попасть на символы которые при замене выдадут полноценный email, пока коллизий не выявлено.

Применение.

Нам нужно построить рейтинг пользователей, но по понятным причинам мы не можем показывать на сайте email’ы наших пользователей.
Нам нужно показать что мы знаем email пользователя (который оставил предложение о продаже на сайте) и при определенных условия мы готовы его показать.
Ну и конечно же ваш вариант.