Работа с изображениями
Пример: Создание пустого изображения, заполнение его белым цветом, вывод текста на созданное изображение и
вывод изображения в браузер в формате PNG.
Обратите внимание, что текст для вывода можно задавать с помощью параметра GET в адресной строке скрипта.
header("Content-type: image/png");
$im = imagecreatetruecolor(400, 30);
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);
if(!isset($_GET['text']){
$text = 'Text...';
}else{
$text = $_GET['text'];
}
$font = 'BOOKOS.TTF';
imagettftext($im, 20, 0, 14, 24, $grey, $font, $text);
imagettftext($im, 20, 0, 11, 21, $black, $font, $text);
imagepng($im);
imagedestroy($im);
Пример: Загрузка изображения из файла и применение к нему эффекта скручивания.
$image = imagecreatefrompng('tsi.png');
$emboss = array(array(2, 0, 0), array(0, -1, 0), array(0, 0, -1));
imageconvolution($image, $emboss, 1, 127);
header('Content-Type: image/png');
imagepng($image, null, 9);
Работа с регулярными выражениями:
Пример: проверка текста на наличие корректного web адреса.
$str = "http://wwwdomencom";
$pattern = "^(http|ftp|https)://(www\.)?.+\.([a-zA-Z]{2,7})$^";
echo preg_match ($pattern,$str)."<br />";
Работа с сессиями
Пример: Создание новой сессии, в случае, если она не была создана ранее
if(!session_id()){session_start();}
Пример: Работа с переменными в сессии.
$_SESSION[‘curLng’] = “eng”;
echo $_SESSION[‘curLng’];
Упражнения
Работа с изображениями
•Надо взять файл с картинкой и используя функции РНР написать на
нём свою фамилию (кириллицей) в нижней части изображения. Использовать шрифт 12 размера и отличный от
чёрного цвет. Также использовать для этого шрифт из TTF файла).
Работа с регулярными выражениями
•Создать переменную, содержащую произвольный текст, в произвольном месте этого текста должны присутствовать ноль
или более адресов электронной почты. Проверить эту строку на наличие электронного адреса с использованием
следующего шаблона регулярного выражения:
/^([a-zA-Z0-9\._\+-]+)\@((\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,7}|[0-9]{1,3})(\]?))$/
(для проверки синтаксиса электронного адреса можно использовать много различных вариантов регулярных выражений,
в данном случае просто используется один из них) как вариант возможно использовать следующее выражение:
/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i
•Ввести другой текст, содержащий ноль или более телефонных номеров в формате ххх-хх-хх (где х – любая
произвольная цифра). Проверить наличие телефонных номеров во введённом тексте используя следующий шаблон
регулярного выражения: /\d{3}-\d{2}-\d{2}/m
Работа с cookies
Задать cookie с использованием следующей функции:
setcookie("curLng", "eng", time()+3600);
проверить наличие cookies переменной curLng и если она определена, то вывести сообщение о том, что текущий
язык установлен на основе значения из Cookie.
$_COOKIE["curLng "];
Работа с сессиями
Создать сессию, занести в неё значение visits равное 1. Если сессия уже создана, то нужно увеличить значение
visits на 1. И вывести полученное значение, с текстом: Обновление страницы номер №: n, где n – значение из
сессии visits.