Офис НП AMWAY в Ярославле
→ На карте Купить AMWAY: офис в ЯрославлеКонсультации, презентации, мастер–классы, знакомство с продукцией, заказ и выдача купленного товара:
●Адрес: улица Валентины Терешковой, дом 1 (Вход со двора)
●Телефон: +7 (920) 112-00-91
●Email: matyxho@mail.ru
●Сайт: https://www.amway.ru/user/lebedem
●Визитка: http://yar.meweb.ru
FAQ (готовые сниппеты) » PHP |
Вернуться на предыдущую страницу
Кнопка "Назад" средствами PHP
Вверх
Кнопка "Назад" средствами PHP
Код: PHP
if (isset($_SERVER['HTTP_REFERER'])){
echo "<a href='".htmlspecialchars($_SERVER['HTTP_REFERER'])."'>Вернуться назад</a>";
}
Добавлено: Pisatel 19. августа 2014
Вверх
Выводим сообщение пользователям устаревших браузеров Internet Explorer
Вверх
Код: PHP
if (isset($_SERVER['HTTP_USER_AGENT']) && preg_match("/msie [5-8]/i", $_SERVER['HTTP_USER_AGENT'])){
echo "Ваша версия браузера устарела!";
}
Добавлено: Pisatel
Вверх
Вырезаем http:// и возможный слеш в конце адреса
Вверх
Код: PHP
$url = "http://www.meweb.ru/articles.php";
$url = preg_replace("/(http(s*):\/\/|(\/.*)*)/", "", $url);
echo $url;
// выведет www.meweb.ru
Вверх
Вырезать повторяющиеся символы из текста
Вырезаем повторяющиеся многократно символы .......... или ??????? или )))))))) или !!!!!!!! или ((((((((, и оставляем только 3
Вверх
Вырезаем повторяющиеся многократно символы .......... или ??????? или )))))))) или !!!!!!!! или ((((((((, и оставляем только 3
Код: PHP
function cleanText($text){
$text = preg_replace("#(\.|\?|!|\(|\)){3,}#", "\1\1\1", $text);
return $text;
}
Добавлено: Pisatel
Вверх
Закрываем страницу (сайт) для поисковых роботов
Этот небольшой фрагмент поможет не допустить вторжения поисковых роботов в ваши владения (официальных)
Вверх
Этот небольшой фрагмент поможет не допустить вторжения поисковых роботов в ваши владения (официальных)
Код: PHP
if (isset($_SERVER['HTTP_USER_AGENT'])) {
$bot = preg_match("/(yandex|google|msnbot|bingbot|mail|yahoo|rambler|aport|webcrawler|webalta)/i", htmlspecialchars($_SERVER['HTTP_USER_AGENT'], ENT_QUOTES)) ? TRUE : FALSE;
} else {
$bot = FALSE;
}
if ($bot) {
die("Доступ запрещен");
}
Вверх
Листинг всех файлов в директории
Такой вот небольшой фрагмент кода покажет все файлы с заданным расширением в обозначенной директории
Вверх
Такой вот небольшой фрагмент кода покажет все файлы с заданным расширением в обозначенной директории
Код: PHP
// директория для листинга файлов
// можно задать любые расширения и пути, например
//$files = glob('/path/to/dir/*.xml');
$files = glob('*.php');
// задаем ссылки на все файлы с расширением .php
// чтобы задать исключения, делаем так
$files = array_diff($files, array('index.php', 'opendb.php'));
// то есть index.php и opendb.php в листинг не попадут
foreach ($files as $value) {
echo "<a href='http://www.meweb.ru/".$value."'>".$value."</a><br />";
}
Добавлено: Pisatel
Вверх
Конвертация тега переноса BR в символ новой строки
Вверх
Код: PHP
$text = preg_replace("/<br(\s*+)?\/?\>/i", "\n", $text);
Добавлено: Pisatel
Вверх
Проверка валидности email
Вверх
Код: PHP
$email = $_POST['email'];
$valid_email = preg_match("/~([a-zA-Zа-яА-Я0-9!#$%&'*+-/=?^_`{|}~])@([a-zA-Zа-яА-Я0-9-]).([a-zA-Zа-яА-Я0-9]{2,6})~/i", $email) ? "Верно" : "Неверно";
Добавлено: Pisatel 19. августа 2014
Вверх
Проверка заголовков, отдаваемых при запросе файла с сервера
Делал загрузку описаний видео с youtube через их api и столкнулся с проблемой: как проверять, что мне отдает сервер, если введен неверный ID видео. Ответ оказался прост: читаем заголовки отдаваемые сервером, код 200- ок, остальные нам не нужны.
Вверх
Делал загрузку описаний видео с youtube через их api и столкнулся с проблемой: как проверять, что мне отдает сервер, если введен неверный ID видео. Ответ оказался прост: читаем заголовки отдаваемые сервером, код 200- ок, остальные нам не нужны.
Код: PHP
$api = 'http://gdata.youtube.com/feeds/api/videos/{ID}?v=2';
$headers = get_headers($api);
// ^ читаем заголовки
$youtube = strpos($headers[0], '200') ? simplexml_load_file($api) : '';
// если в первой строке есть код 200- загружаем xml файл
if (!empty($youtube)){
// здесь все манипуляции
} else {
// здесь то, что при ошибке
}
Добавлено: Pisatel 30. июня 2014
Вверх
Просмотр исходного кода страницы
С помощью данного кода можно просмотреть html код любой страницы сайта
Вверх
С помощью данного кода можно просмотреть html код любой страницы сайта
Код: PHP
$url = "http://www.meweb.ru/";
$lines = file($url);
foreach($lines as $line_num => $line){
echo "Строка #<b>{$line_num}</b> : ".htmlspecialchars($line)."<br />\n";
}
Добавлено: FileMan 04. июня 2014
Вверх
Простая функция bb-кодов
Вверх
Код: PHP
function bb_code($text){
$text = preg_replace("/\[b\](.*?)\[\/b\]/is", "<strong>\\1</strong>", $text);
$text = preg_replace("/\[i\](.*?)\[\/i\]/is", "<i>\\1</i>", $text);
$text = preg_replace("/\[u\](.*?)\[\/u\]/is", "<u>\\1</u>", $text);
$text = preg_replace("/\[s\](.*?)\[\/s\]/is", "<s>\\1</s>", $text);
$text = preg_replace('#\[url\]([\r\n]*)(http://|ftp://|https://|ftps://)([^\s\'\"]*?)([\r\n]*)\[/url\]#sie', "'<a href=\'\\2\\3\' target=\'_blank\' title=\'\\2\\3\'>'.(strlen('\\2\\3')>30?substr('\\2\\3', strlen('\\2\\3')-10, strlen('\\2\\3')):'').'</a>'", $text);
$text = preg_replace('#\[url\]([\r\n]*)([^\s\'\"]*?)([\r\n]*)\[/url\]#sie', "'<a href=\'http://\\2\' target=\'_blank\' title=\'\\2\'>'.(strlen('\\2')>30?substr('\\2', strlen('\\2')-10, strlen('\\2')):'').'</a>'", $text);
$text = preg_replace('#\[url=([\r\n]*)(http://|ftp://|https://|ftps://)([^\s\'\"]*?)\](.*?)([\r\n]*)\[/url\]#si', '<a href=\'\2\3\' target=\'_blank\' title=\'\2\3\'>\4</a>', $text);
$text = preg_replace('#\[url=([\r\n]*)([^\s\'\"]*?)\](.*?)([\r\n]*)\[/url\]#si', '<a href=\'http://\2\' target=\'_blank\' title=\'\2\'>\3</a>', $text);
return $text;
}
Добавлено: Pisatel
Вверх
Простая функция типографа
Вверх
Код: PHP
function typograf($text){
$search = array(" - ", "(c)", "(с)", "(r)", "(tm)");
$replace = array(" — ", "©", "©", "®", "™");
$text = str_ireplace($search, $replace, $text);
$text = nl2br($text);
return $text;
}
// применение
echo typograf($text);
Добавлено: Pisatel
Вверх
Простой калькулятор
Простейший калькулятор: сложение, вычитание, умножение, деление
Вверх
Простейший калькулятор: сложение, вычитание, умножение, деление
Код: PHP
$calc = "<form method='POST' action=''>";
$calc .= "Первое число <input type='text' name='a' value='5' /><br />";
$calc .= "Второе число <input type='text' name='b' value='5' /><br /><br />";
$calc .= "<input type='radio' name='operation' checked value='+'/>Сложение<input type='radio' name='operation' value='-'/>Вычитание
<input type='radio' name='operation' value='*'/>Умножение
<input type='radio' name='operation' value='/'/>Деление<br /><br />";
$calc .= "<input type='submit' name='vichislit' value='Вычислить'> ";
$calc .= "<input type='reset' name='ochistit' value='Отменить'>";
$calc .= "</form>";
$result = "";
$error = "";
$vichislit = trim(htmlspecialchars($_POST['vichislit']));
$ochistit = trim(htmlspecialchars($_POST['ochistit']));
$a = trim(htmlspecialchars($_POST['a']));
$b = trim(htmlspecialchars($_POST['b']));
$radio = trim(htmlspecialchars($_POST['operation']));
if (isset($vichislit) && !empty($vichislit)){
$result .= "Результат ";
if (is_numeric($a) && is_numeric($b)){
if ($radio == '+'){
$c = $a+$b;
$result .= "суммы: ".$a."+".$b."=".$c."<br />";
} elseif ($radio == '-'){
$d = $a-$b;
$result .= "разности: ".$a."-".$b."=".$d."<br />";
} elseif ($radio == '*'){
$e = $a*$b;
$result .= "произведения: ".$a."*".$b."=".$e."<br />";
} elseif ($radio == '/'){
$f = $a/$b;
$result .= "деления: ".$a.":".$b."=".$f;
} else {
$result .= "Произошла ошибка. Попробуйте еще раз.";
}
} else {
$error .= "Ошибка. Разрешены только цифры";
}
}
echo $calc.$result.$error;
Добавлено: Pisatel
Вверх
Подсветка слов в тексте
Пригодится, например, для подсветки слов при поиске. Данный пример "подсветит" точное совпадение meweb.ru
Вверх
Пригодится, например, для подсветки слов при поиске. Данный пример "подсветит" точное совпадение meweb.ru
Код: PHP
$text = "Самый лучший сайт- meweb.ru в сети! На сайте meweb.ru Вы, возможно, найдете что-нибудь интересное!";
$text = preg_replace("/b(meweb\.ru)b/i", "<span style='color:#ff0000;'>\\1</span>", $text);
echo $text;
Добавлено: Pisatel
Вверх
Получаем адрес на карте Google
Подойдет, например, чтобы отображать город на карте в профиле пользователя. Для начала- функция, чтобы преобразовать русские буквы (можете использовать свою)
Ну и ссылка на изображение
Вверх
Подойдет, например, чтобы отображать город на карте в профиле пользователя. Для начала- функция, чтобы преобразовать русские буквы (можете использовать свою)
Код: PHP
function stripTitle($title){
static $convertTable = array (
'а' => 'a', 'А' => 'A', 'б' => 'b', 'Б' => 'B', 'в' => 'v',
'В' => 'V', 'г' => 'g', 'Г' => 'G', 'д' => 'd', 'Д' => 'D',
'е' => 'e', 'Е' => 'E', 'ё' => 'yo', 'Ё' => 'Yo', 'ж' => 'zh',
'Ж' => 'Zh', 'з' => 'z', 'З' => 'Z', 'и' => 'i', 'И' => 'I',
'й' => 'y', 'Й' => 'Y', 'к' => 'k', 'К' => 'K', 'л' => 'l',
'Л' => 'L', 'м' => 'm', 'М' => 'M', 'н' => 'n', 'Н' => 'N',
'о' => 'o', 'О' => 'O', 'п' => 'p', 'П' => 'P', 'р' => 'r',
'Р' => 'R', 'с' => 's', 'С' => 'S', 'т' => 't', 'Т' => 'T',
'у' => 'u', 'У' => 'U', 'ф' => 'f', 'Ф' => 'F', 'х' => 'h',
'Х' => 'H', 'ц' => 'ts', 'Ц' => 'Ts', 'ч' => 'ch', 'Ч' => 'Ch',
'ш' => 'sh', 'Ш' => 'Sh', 'щ' => 'shch', 'Щ' => 'Shch',
'ъ' => '', 'Ъ' => '', 'ы' => 'i', 'Ы' => 'I', 'ь' => '',
'Ь' => '', 'э' => 'e', 'Э' => 'E', 'ю' => 'yu', 'Ю' => 'Yu',
'я' => 'ya', 'Я' => 'Ya');
$title = strtr($title, $convertTable);
$title = str_replace(' ', '%20', $title);
return $title;
}
Ну и ссылка на изображение
Код: PHP
$city = "Ярославль";
$location = "<img src='http://maps.googleapis.com/maps/api/staticmap?center=".stripTitle($city)."&size=390x120&maptype=roadmap&sensor=false' alt='".$city."' />";
echo $location;
Добавлено: Pisatel
Вверх
Получаем GIF- анимацию из видео
Для работы у вас на сервере должна быть установлена библиотека ffmpeg:
Вверх
Для работы у вас на сервере должна быть установлена библиотека ffmpeg:
Код: PHP
$file = "myfile.avi";
$movie = new ffmpeg_movie($file);
$gif = new ffmpeg_animated_gif("image.gif",100, 100, 24);
for($frame = 150;$frame <= 200; $frame++){
$image = $movie -> getFrame($frame);
$gif -> addFrame($image);
}
Добавлено: Pisatel
Вверх
Удаление всех ссылок (url) из текста
Из раздела- "делать было нечего..." В общем, удаляем все ссылки из текста, этакая антиреклама
Вверх
Из раздела- "делать было нечего..." В общем, удаляем все ссылки из текста, этакая антиреклама
Код: PHP
$text = "На нашем [ url=http://www.meweb.ru/articles.php]сайте[/url ] вы найдете полезные статьи. Так же на сайте http://www.meweb.ru/faq.php можно найти всевозможные сниппеты. Еще на сайте <a href='http://www.meweb.ru/forum/index.php'>http://www.meweb.ru/forum/index.php</a> есть форум, на котором можно задать вопросы. [ url]http://www.meweb.ru[/url ] - рекомендуем!";
function replaceUrl($text){
preg_match_all("#((\[url=.*?\].*?\[\/url\])|(\[url\].*?\[\/url\])|(<a\shref=[\r\n\'\"]*.*?[\r\n\'\"]*>.*?<\/a>)|(\shttps*:\/\/.*?[^\s]*)?)*#si", $text, $matches, PREG_PATTERN_ORDER);
if (count($matches[0])>0){
for($i=0; $i<count($matches[0]); $i++) {
$text = str_replace($matches[$i], "<strong> *реклама* </strong>", $text);
}
}
return $text;
}
// использование
echo replaceUrl($text);
// получилось:
// На нашем *реклама* вы найдете полезные статьи. Так же на сайте *реклама* можно найти всевозможные сниппеты. Еще на сайте *реклама* есть форум, на котором можно задать вопросы. *реклама* - рекомендуем!
Добавлено: Pisatel
Вверх
Функция генерации нового названия
Генерация нового названия, если файл с таким именем уже существует
Вверх
Генерация нового названия, если файл с таким именем уже существует
Код: PHP
function file_newname($path, $filename){
if ($pos = strrpos($filename, ".")) {
$name = substr($filename, 0, $pos);
$ext = substr($filename, $pos);
} else {
$name = $filename;
}
$newpath = $path."/".$filename;
$newname = $filename;
$counter = 0;
while (file_exists($newpath)){
$newname = $name."_".$counter.$ext;
$newpath = $path."/".$newname;
$counter++;
}
return $newname;
}
Добавлено: Pisatel
Вверх
Функция замены (скрытия) символов звездочками
Пригодится, например, для частичного скрытия номера телефона, пароля и т.д. Второй параметр- число символов, которые не будут скрыты
Вверх
Пригодится, например, для частичного скрытия номера телефона, пароля и т.д. Второй параметр- число символов, которые не будут скрыты
Код: PHP
function starOut($string, $number){
$star = "";
if (is_numeric($number) && $number < strlen($string)){
$star = str_repeat("*", (strlen($string) -$number)).substr($string, -$number, $number);
}
return $star;
}
// пример
$myphone = "+7(123)4567890";
echo starOut($myphone, 4);
// получим **********7890
$mypass = "Zdk7UMj9ft85";
echo starOut($mypass, 6);
// получим ******j9ft85
Добавлено: Pisatel
Вверх
Функция преобразования размера файлов
Вверх
Код: PHP
function parseByteSize($size, $digits = 2, $dir = false){
$kb = 1024;
$mb = 1024 * $kb;
$gb= 1024 * $mb;
$tb = 1024 * $gb;
if (($size == 0) && ($dir)){
return "Пусто";
} elseif ($size < $kb){
return $size."Байт";
} elseif ($size < $mb){
return round($size / $kb,$digits)."кБ";
} elseif ($size < $gb){
return round($size / $mb,$digits)."МБ";
} elseif ($size < $tb){
return round($size / $gb,$digits)."ГБ";
} else {
return round($size / $tb, $digits)."ТБ";
}
}
Добавлено: Pisatel
Вверх
Функция преобразования hex в rgb
Функция для преобразования цвета из формата hex в rgb
Пример использования:
Вверх
Функция для преобразования цвета из формата hex в rgb
Код: PHP
function hex2rgb($hex) {
$hex = str_replace("#", "", $hex);
if (strlen($hex) == 3) {
$r = hexdec(substr($hex,0,1).substr($hex,0,1));
$g = hexdec(substr($hex,1,1).substr($hex,1,1));
$b = hexdec(substr($hex,2,1).substr($hex,2,1));
} else {
$r = hexdec(substr($hex,0,2));
$g = hexdec(substr($hex,2,2));
$b = hexdec(substr($hex,4,2));
}
$rgb = array($r, $g, $b);
return implode(", ", $rgb);
}
Пример использования:
Код: PHP
$hex = "#000000";
echo hex2rgb($hex); // выведет 0, 0, 0 во всех случаях
$hex = "000000";
echo hex2rgb($hex);
$hex = "#000";
echo hex2rgb($hex);
$hex = "000";
echo hex2rgb($hex); // то есть, функция принимает и сокращенный формат hex, и полный
// с # или без
Добавлено: Pisatel 25. марта 2015
Вверх
Функция проверки на целое число
Данная функция взята из CMS PHP Fusion. Она весьма удобна при проверке, например, $_GET или $_POST запросов
Пример использования
Вверх
Данная функция взята из CMS PHP Fusion. Она весьма удобна при проверке, например, $_GET или $_POST запросов
Код: PHP
function isnum($value) {
if (!is_array($value)) {
return (preg_match("/^[0-9]+$/", $value));
} else {
return false;
}
}
Пример использования
Код: PHP
if (isnum($_GET['article_id'])){
echo "Верно";
} else {
echo "Переданный параметр не является числом";
}
Добавлено: Pisatel
Вверх
Функция определения протокола сайта
Вверх
Код: PHP
function getCatProtocol() {
if (!empty($_SERVER['HTTP_X_FORWARDED_PROTO'])) {
return $_SERVER['HTTP_X_FORWARDED_PROTO']."://";
} else {
return !empty($_SERVER['HTTPS']) ? "https://" : "http://";
}
}
Добавлено: Pisatel 21. апреля 2016
Вверх
Функция хэширования пароля
Вверх
Код: PHP
function hashPassword($strPass) {
$value = $strPass[1];
if(preg_match("/^[a-f]+/i", $value)) {
$salt = "!";
}
else {
$salt = "#";
}
if(preg_match("/^[g-m]+/i", $value)) {
$salt = "@";
}
if(preg_match("/^[n-s]+/i", $value)) {
$salt = "$";
}
if(preg_match("/^[t-z]+/i", $value)) {
$salt = "%";
}
$strPass .= $salt;
$hash = hash("sha512", $strPass); // sha512 - 128 символьная кодировка
return $hash;
}
// пример
$mypass = "12345678";
echo hashPassword($mypass);
// выведет 28b438d589b5b242095034f0eb65cd51dbf6add9bf439ae176b26b667ae16cb6836491275877a36e31d8e75e9102534d676cf719aac2c5a288bb801bae488fb7
Добавлено: Pisatel
Вверх
Последние активные темы форума
Темы | Просмотров | Ответов | Последние сообщения | |
Вопрос по переделке bb-кода PHP, MySQL |
22329 | 5 | Pisatel 26. мая 2017 |
|
Вопросы по Ajax форме обратной связи CMS PHP Fusion |
68543 | 48 | Ditrin 19. февраля 2017 |
|
BBCode YouTube Video Colorbox mod CMS PHP Fusion |
15357 | 2 | Pisatel 10. декабря 2016 |
|
Как лучше создать собственную страницу? CMS PHP Fusion |
17888 | 17 | Pisatel 11. мая 2016 |
|
Небольшие вопросы по скриптам магазина и катало... PHP, MySQL |
144801 | 80 | Pisatel 11. января 2016 |
|
BBCode Code mod CMS PHP Fusion |
14416 | 0 | Pisatel 31. августа 2015 |
|
Ajax Like Dislike Article Panel CMS PHP Fusion |
22550 | 16 | Pisatel 07. июля 2015 |
|
Хлебные крошки / BreadCrumbs SEO Panel CMS PHP Fusion |
26238 | 17 | Pisatel 04. июля 2015 |
|
Abbr Description BBCode CMS PHP Fusion |
7664 | 0 | Pisatel 15. июня 2015 |
|
Плагин Email рассылки Mail To All by Pisatel CMS PHP Fusion |
36988 | 32 | Pisatel 26. апреля 2015 |
|
Подозрительный трафик и прочие страшилки Всякая хрень |
11793 | 2 | Ditrin 23. апреля 2015 |
|
Мод Newsletter - рассылка писем пользователям с... CMS PHP Fusion |
31031 | 13 | Pisatel 10. апреля 2015 |
|
Мод отправки писем PHPMailer для PHP-Fusion CMS PHP Fusion |
128288 | 113 | Ditrin 06. апреля 2015 |
|
Появление неизвестного файла subscriptions.php CMS PHP Fusion |
8842 | 2 | Pisatel 06. апреля 2015 |
|
Autoban on IP CMS PHP Fusion |
23180 | 13 | Pisatel 03. апреля 2015 |