Извлечение адресов email из текста
Когда-либо задавались вопросом, как спаммеры могут получать Ваш адрес электронной почты? Это просто, они рассматривают веб-страницы (такие как форумы), точнее код html, чтобы извлечь адреса электронных почт. Эта функция принимает в качестве параметра строковую переменную, и печатает все электронные письма, содержавшие в строке.
function extract_emails($str){
// Это регулярное выражение извлекает все электронные письма из строки:
$regexp = '/([a-z0-9_\.\-])+\@(([a-z0-9\-])+\.)+([a-z0-9]{2,4})+/i';
preg_match_all($regexp, $str, $m);
return isset($m[0]) ? $m[0] : array();
}
// Тестовый текст
$test_string = 'This is a test string...
test1@example.org
Test different formats:
test2@example.org;
<a href="test3@example.org">foobar</a>
<test4@example.org>
strange formats:
test5@example.org
test6[at]example.org
test7@example.net.org.com
test8@ example.org
test9@!foo!.org
foobar
';
// Получаем список адресов
print_r(extract_emails($test_string));
Определение числа читателей в Twitter
Что нужно чтобы узнать количество Ваших читателей в Twitter? Ну во-первых Twitter аккаунт, а во-вторых вот эта PHP функция) Параметром для функции является имя пользователя!
function get_followers($twitter_id){
$xml=file_get_contents('http://twitter.com/users/show.xml?screen_name='.$twitter_id);
if (preg_match('/followers_count>(.*)</',$xml,$match)!=0) {
$tw['count'] = $match[1];
}
return $tw['count'];
}
// Передаем функции имя пользователя, и узнаем количество читателей
$twitter = "XoZblog";
echo get_followers($twitter);
Создание временного URL из строки
Здесь мы передаем в функцию строковую переменную, преобразуем строку в нижний регистр и заменяем все пробелы тире. Принцип как в текстовом редакторе WordPress, вводим заголовок статьи и сразу формируется URL страницы.
function create_slug($string){
$string = strtolower($string);
$slug=preg_replace('/[^a-z0-9-]+/', '-', $string);
return $slug;
}
echo create_slug('Create Simple Slug URL');
Преобразование значения HEX в RBG
Если у Вас есть задача получить значения RGB цвета, преобразованного из Шестнадцатеричного HEX номера цвета, это — функция для Вас.
function hextorgb($hexvalue){
if($hexvalue[0] == '#') {
$hexvalue = substr( $hexvalue, 1);
}
if(strlen( $hexvalue ) == 6){
list($r, $g, $b) = array($hexvalue[0] . $hexvalue[1], $hexvalue[2] . $hexvalue[3], $hexvalue[4] . $hexvalue[5]);
}elseif (strlen($hexvalue) == 3) {
list($r,$g,$b) = array($hexvalue[0] . $hexvalue[0], $hexvalue[1] . $hexvalue[1], $hexvalue[2] . $hexvalue[2]);
}else{
return false;
}
$r = hexdec($r);
$g = hexdec($g);
$b = hexdec($b);
return array('R' => $r, 'G' => $g, 'B' => $b);
}
// Параметром для функции будет номер цвета
$rgb = hextorgb('#fff000');
print_r($rgb);
Вывести на экран изображение пользователя Gravatar
Получить изображений пользователя Gravatar просто. Если у Вас есть адрес электронной почты пользователя, Вы должны захешировать email в MD5 и добавить его к gravatar URL.
$gravatar = 'http://www.gravatar.com/avatar/' . md5($email_address) . '?s=32';
echo '<img src="' . $gravatar . '" width="32" height="32"/>';
Удаление ссылок из текста
Если есть необходимость убрать из текста все ссылки, то эта регулярочка для Вас.
$string = 'Это тестовая строка с ссылками: http://xozblog.ru и еще http://google.com';
$string = preg_replace('/\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|$!:,.;]*[A-Z0-9+&@#\/%=~_|$]/i', '', $string);
echo $string;
На этом все! Если возникнут вопросы или предложения пишем комментарии! До связи )