Dolphin»Блоги


День Рождения Ноябрь 11, 1985

Обрезать строку до и после определенного символа (PHP)

PHP
Была необходимость разобрать строку на куски до и после определенного символа.
Я разбирал URL на части до и после слеша (/), для скрипта редиректа внешних ссылок, что бы вытащить домен сайта. Разбивал строку при помощи функции explode(), данная функция для этого и предназначена, что бы строки разбивать на подстроки.

Вот как я это сделал:
Забил URL в переменную:
$value = 'https://www.google.com/doodles/claude-debussys-151st-birthday'; 

В данном URL (как и в любом другом) есть несколько слешов /, что мне и надо, они та и будут служить мне тем символом, по который строка будет обрезаться.
Дальше разбиваю URL на подстроки, до и после слеша:
$domain = explode('/', $value); 

Строка разбивается на следующие подстроки: https:, www.google.com, doodles, claude-debussys-151st-birthday, у каждой подстроки есть свой порядковый номер, начиная с ноля (массив). Получается так:
echo $domain[0]; # Выводит на экран - https:
echo $domain[1]; # Выводит на экран - (пустая строка, так как между двумя
...

Как восставить текст из каракулей на PHP

Здравствуйте. Хочу представить Вашему вниманию небольшой, но полезный в некоторых случаях скрипт. Может кому пригодится.

Немного предисловия.
Случаются такие ситуации, в которых при смене кодировки между windows-1251 и UTF-8 текст, написанный на кириллице, преобразуется примерно вот в такие каракули: "Проверочный".
Если Вы не сохранили резервную копию перед изменениями, последствия могут быть необратимы. Но не в нашем случае :) Немного поработав над этим вопросом, я составил вот такой массив:
array
( 
    'Р°'=>'а', 'Р±'=>'б', 
    'РІ'=>'в', 'Рі'=>'г', 
    'Рґ'=>'д', 'Рµ'=>'е',
    'С‘'=>'ё', 'Р¶'=>'ж',
    'Р·'=>'з', 'Рё'=>'и',
    'Р№'=>'й', 'Рє'=>'к',
    'Р»'=>'л', 'Рј'=>'м', 
    'РЅ'=>'н', 'Рѕ'=>'о',
    'Рї'=>'п', 'СЂ'=>'р', 
    'СЃ'=>'с', 'С‚'=>'т', 
    'Сѓ'=>'у', 'С„'=>'ф', 
    'С…'=>'х', 'С†'=>'ц',
    'С‡'=>'ч', 'С€'=>'ш', 
    'С‰'=>'щ', 'СЉ'=>'ъ', 
    'С‹'=>'ы', 'СЊ'=>'ь', 
   
...

Кавычки в PHP - простые и двойные

Как то сам задавался вопросом, какая разница в кавычках, какие лучше использовать простые (') или двойные ("). Как оказалось разница между ними не маленькая. Начну с того, что с простыми кавычками php машина работает немного быстрее, чем с двойными. В двойных кавычках php машина видеть переменные:
$name = "Юля";
echo "Привет $name!";

Результат:
Привет Юля!

В простых же такое не пройдет:
$name = 'Юля';
echo 'Привет $name!';

Результат:
Привет $name!

То есть переменная прошла, как текст... Что бы переменные проходили, как переменные и на экране отображалось их значения, надо выносить их за кавычки, например так:
$name = 'Юля';
echo 'Привет ' . $name . '!';

Результат:
Привет Юля!

Из простых и двойных кавычек, я выбрал - простые....

Создание опроса/голосования на сайте (PHP)

Статья и код, что представлен в статье не мой, я его скопировал со своего старого форума (Форума уже нет).

Здравствуйте. Предлагаю Вашему вниманию инструкцию по созданию системы голосования на сайте.
Итак, давайте рассмотрим, что же представляет из себя система голосования на сайте.
Пользователь видит на странице форму, в которой присутствуют заголовок голосования, варианты ответов, из которых можно выбрать один, тот, за который пользователь хочет проголосовать.
После выбора пользователь нажимает кнопку "проголосовать" и система засчитывает его голос в пользу того или иного варианта ответа.
"Снаружи" вроде всё просто: обычная форма, обычная кнопка, обычные radio-кнопки. Но давайте заглянем "за кулисы" работы скрипта голосования. Там нашему взору откроется более интересная картина.

Что же представляет из себя система голосования изнутри?
Как можно запоминать выбор пользователя и не давать ему голосовать повторно?
Как создавать вопросы и варианты ответов?
На эти вопросы мы сейчас...

Определить размер изображения на PHP

Здравствуйте.
Хочу рассказать, как при помощи PHP можно определить размер картинки, ширину и высоту.
Для определения размера, существует функция getimagesize(), которая измерит ширину и высоту картинки, вернет результат массивом.
Вот пример, как использовать функцию:
$img_info = getimagesize($img);

В примере приведена переменная $img, которая должна содержать в себе местонахождение картинки и конечно сам файл. Переменная $img_info - это массив из четырех значений:
  1. $img_info[0] - ширина картинки (px).
  2. $img_info[1] - высота картинки (px).
  3. $img_info[2] - флаг типа изображения.
  4. $img_info[3] - содержит в себе сразу и ширину и высоту, пример: width="100" height="100" (px).
    Этот элемент массива можно использовать в теге IMG.


Приведу еще пример, с использованием функции list(). Данная функция назначит переменным значения взятые из списка подобно массиву.
Если есть необходимость получить только два первых значения массива, то есть ширину и высоту, то делаем так:
list($width, $height) =
...