Функциите са също толкава важни за писането на програми, както и регулярните изрази. Функциите, които прилагахме досега са вградени в РНР, те са стандартни функции. Създаването на функции може да ви спести много време при написването на програма, пък и това е крачка към написването на библиотека на РНР, която може да се ползва при написване на бъдещо уеб приложение. :)
Как се създават функции?
Често се налага определени фрагменти от кода да се използват многократно и могат да се обединят във функция.
Синтаксисът за създаване на функция е следния:
function име_на_функцията () {
инструкция/инструкции;
}
Името на функцията e валидно, ако започва с буква от азбуката (или знак за подчертаване), последвана от букви, цифри или знака за подчертаване. Не бива да оставяте интервали, когато давате наименование на функцията. Ако искаме да създадем функция за качване на изображения на сървър, можем да я наименоваме по един от следните начини:
function име_на_функцията () {
инструкция/инструкции;
}
Името на функцията e валидно, ако започва с буква от азбуката (или знак за подчертаване), последвана от букви, цифри или знака за подчертаване. Не бива да оставяте интервали, когато давате наименование на функцията. Ако искаме да създадем функция за качване на изображения на сървър, можем да я наименоваме по един от следните начини:
function1
function_1
UploadImage
Upload image – ще предизвика грешка заради интервала
upload_image и др.
Аз лично предпочитам 3-ти или 5-ти пример.
Не е необходимо функцията да бъде дефинирана преди да се обърнем към нея, освен, когато тя е условно дефинирана. Във фигурните скоби може да се поставя всякакъв валиден РНР скрипт, както и да призовавате други функции. Броят на инструкциите не е ограничен, но не забравяйте, че след всяка инструкция се поставя точка и запетая. Можете да извикате функцията, която сте създали, както и всяка друга функция, като се обърнете към нея с реда
function _име_на_функцията ();
което ще стартира изпълнението на инструкциите, които тя съдържа. Всички функции имат глобална област на действие.
Повече информация за функциите можете да откриете на адрес: http://php.net/manual
function_1
UploadImage
Upload image – ще предизвика грешка заради интервала
upload_image и др.
Аз лично предпочитам 3-ти или 5-ти пример.
Не е необходимо функцията да бъде дефинирана преди да се обърнем към нея, освен, когато тя е условно дефинирана. Във фигурните скоби може да се поставя всякакъв валиден РНР скрипт, както и да призовавате други функции. Броят на инструкциите не е ограничен, но не забравяйте, че след всяка инструкция се поставя точка и запетая. Можете да извикате функцията, която сте създали, както и всяка друга функция, като се обърнете към нея с реда
function _име_на_функцията ();
което ще стартира изпълнението на инструкциите, които тя съдържа. Всички функции имат глобална област на действие.
Повече информация за функциите можете да откриете на адрес: http://php.net/manual
Създаване и извикване на функция
- Отворете текстовия редактор.
- Създайте нов файл.
- Наименовайте го passwords_1.php.
- Копирайте съдържанието на файла passwords.php
(Генератор за пароли)
в него. - Съхранете файла passwords_1.php.
- Заменете ред 4 с този:
<title>Генератор за пароли с функция</title>
- На ред 10 въведете:
function CreatePassword () {
Нашата функция ще се казва CreatePassword- името й отговаря на нейното предназначение и лесно се помни.
- Затварящата къдрава скоба поставете на ред 28.
- На редове 33, 34 и 35 въведете следния скрипт:
<?php //Призоваваме функцията createpassword(); ?>
Крайният файл passwords_1.php ще има вида:
<!DOCTYPE html> <html> <head> <title>Генератор за пароли с функция</title> <meta http-equiv="Content-Type" content="text/html"; charset="UTF-8"> </head> <body> <?php function CreatePassword () { $string = "Everyone is like a butterfly, they start out ugly and awkward and then morph into beautiful graceful butterflies that everyone loves."; // Определя дължината на паролата $length = 8; //Шифрира паролата $string = md5($string); //Дължината на зашифрирания стринг $stringlength = strlen($string); srand ((double) microtime() * 1000000); $begin = rand ( 0 , ( $stringlength - $length - 1 ) ) ; $password = substr($string, $begin, $length); echo ("Вашата препоръчителна парола е: <p><big>$password</big>\n"); } ?> <?php //Призоваваме функцията createpassword(); $description="Вашият поздрав се намира на адрес: https://www.youtube.com/watch?v=vtv_VSw_nhg ."; echo ("<br/><br/> " . $description); ?> </body> </html>
Съхранете файла, качете го на сървъра и отворете в браузъра.

Името на функцията (както и имената на вградените в РНР функции) не е чувствително към регистъра, поради което няма значение дали го пишете с малки или с главни букви (сравнете редовете 10 и 35), НО добра практика е функциите да се извикват с имената, с които са създадени.

Името на функцията (както и имената на вградените в РНР функции) не е чувствително към регистъра, поради което няма значение дали го пишете с малки или с главни букви (сравнете редовете 10 и 35), НО добра практика е функциите да се извикват с имената, с които са създадени.
|
Няма коментари:
Публикуване на коментар