Функція — це частина програмного коду, названа унікальним іменем (з точністю до регістра букв). Основне призначення функції — вирішення визначеної задачі. Виклик функції проходить від імені в різних місцях програми, що дозволяє багаторазово виклнувати фрагмент з вказаним іменем.
Очевидний позитивний ефект такого рішення, складається в тому, що блок кода пишеться тільки раз, а потім міняється коли це необхідно.
Імя функції може складатись із латинських букв, цифр і знаків підкреслювання. Починатись з цифри воно не повинно.
Синтаксис
function імя(аргументи)
{
тіло функції
}
Викликана функція буде містити таку ж кількість аргументів, як і в заявці.
Приклад
function foo($arg_1,$arg_2,$arg_n,) {
echo “Птиклад.\n”;
return $val;
}
В прикладі присутні наступні елементи
foo — імя функції;
$arg_1,$arg_2,$arg_n — аргументи функції;
$val — повернення значень функції.
Наступна функція зсумує дві змінні.
<?PHP function summa($a,$b){
$sum=$a+$b;
return$sum;
}
$rez=summa(10,16);echo “Сумма:”.$rez;
?>
Браузер покаже Сумма 26
Функція яка побудує таблицю
Приклад
<?PHP
function tab($lim){
echo “<table border=\”1\”>\n”;
for ($i=0; $i<=$lim; $i++) {
echo “<tr><td>стовбець”.$i”</td></tr>\n”;
}
echo “</table>”;
}tab(4);// таблиця з 5 рядками
?>
В вікні браузера відобразиться таблиця
стовбець 0 |
стовбець 1 |
стовбець 2 |
стовбець 4 |
стовбець 5 |
Робота з файлами
Серед функцій РНР присутні також і функції роботи з файлами.
Робота з файлами включає в себе три етапи
⇒відкриття файла
⇒обробка (читання, запис)
⇒ закривання файлу РНР може виконувати деякі операції з файлами, розташованими на сервері.
Це операції
⇒fopen()= відкрити вибраний файл
⇒fclose()= закрити файл
⇒fread()= читати вміст файлу
⇒fwrite()= запис в файл
⇒fillesize() = вказати розмір файлу.
Відкриття файлу
Відкриття файлу — здійснює функція fopen(). Синтаксис функції fopen():
fopen(param1, param2);
param1= файл, шлях до файлу або адреса файла, який буде доступний.
param2 = спосіб, яким буде відкритий файл, який може мати значення:
⇒ r = файл відкритий тільки для читання
⇒ r+ = файл відкритий тільки для читання і запису
⇒ w = файл відкритий тільки для запису
⇒ w+= файл відкритий для читання і запису, але якщо не має файлу він створюється
⇒ a = файл відкритий для додавання до завершення
⇒ а+ = файл відкритий для додавання до завершення, але якщо файлу не має він створюється.
⇒ t = файл відкритий в текстовому режимі
⇒ b = файл відкритий в бінарному режимі
Функція читання fread() файлу використовується наступним чином
string.fread(resourse handle, int lenght)
Функція fread() читає lenght байт (довжина в байтах), починаючи з позиції, де розміщений файловий паказник handle.
Читання закінчується по прочитанню lenght байт або досягненю файлу до кінця.
Приклад
$filename = “text/text”;
$handle=fopen($filename, “r”);
$contents=fread($handle, filesize($filename));
Запис в файл
Функція для запису в файл fwrite() використовується наступним чином
fwrite($handle,”вміст буде записаний в файл”);
Перевірка прав доступу до файлу
Функція яка перевіряє, чи доступний файл для запису, це is_writable:
is_writable($filename):
Ця функціямповертає значення true якщо дозволений доступ до файлу, і false, якщо завершена запис в файл.
Закриття файлу
Файл може бути закритий за допомогою функції fclose()
fclose($handle);
Приклади використання даних функцій.
Створюємо текстовий файл
Приклад використання функції fread().
<?PHP
$h = fopen(‘text.txt’,”r+”);
// відкриваємо файл для запису на читання
$content = fread($h,
filesize (‘text.txt’));
// зчитуємо вміст файлу
fclose($h);//закриваємо зєднання з файлом
echo $content;
//виводимо вміст файлу
//на екран браузера
?>
Приклад використання функції fwrite()
<?PHP
$filename = ‘text/txt’;
$somecontent = “Додати це до файлу\n”;
//Для початку переконаємось, що такий файл існує і доступний для запису,
if(is_writable($filename)) {
// Ми відкриваємо $somecontent в режимі “дописати в кінець”
// Таким чином, зміщення встановлено в кінець файлу і
// наш $somecontent допишемо в кінець при використанні fwrite().
if (!$handle = fopen($filename, ‘a’)){
echo “Неможливо відкрити файл ($filename)”;
exit;
}
//Записуємо $somecontent в наш відкритий файл.
if(fwrite($handle, $somecontent)=== FALSE) {
echo “Неможливо записати в файл ($filename)”;
exit;
}
echo “Виконана запис ($somecontent) в файл ($filename)”;
fclose($handle);
}else{
echo ” Файл $filename недоступний для запису”;
}
?> Приклад використання функції fclose()
<?PHP $handle = fopen(‘text.txt’,’r’);
fclose($handle);
?>
Функція email
Використовуючи функцію mail(), ми можемо відправити через РНР електронну почту. Для реалізації цієї можливості використовується наступний синтаксис:
mail(отримувач, тема, повідомлення, додатковий заголовок);
⇒ отримувач – адреса на яку буде відправлена почта, але якщо необхідно, почта може бути відправлена на декілька адрес, в такому випадку адреса може відділятись комою.
⇒ тема – інформація, яка відобразиться в полі тема;
⇒ повідомлення – вміст повідомлення
⇒додатковий заголовок – містить додаткову інформацію, наприклад: From, Cc, Bcc, яка буде розділена символами переводу рядка CRLF (\r\n).
Приклад модель відправки звичайної почти
<?PHP
$to=”test@mail.ru”;
$subiect=””;
$mesag .=””;
$headers = ‘MIME-Version:1.0’.”\r\n”;
$headers .=’Content–type: text/HTML;charset=iso-8859-1′.”\r\n”;
$headers .=’From: info@mail.ru’.”\r\n”;
$headers .=’Cc: cc@mail.ru’.”\r\n”;
$headers .=’Bcc: bcc@mail.ru’.”\r\n”;
mail($to, $subiect, $mesag, $headers);
?>
В кінці цієї сторінки посилання на публікації про елементи основані на РНР.