Функции в php

Среда, 11 августа 2010 г.
Рубрика: PHP программирование -> Функции
Метки:
Просмотров: 1005
Подписаться на комментарии по RSS

Функция - это не большая подпрограмма, которой передаются данные (

аргументы ) и она возвращает какой-то результат.

В php существуют стандартные функции, это функция - raund - случайное

число от и до, вот пример скрипта, в котором выводится случайное число

от 1 до 20:

<?php
$a = raund ( 1, 20 );
echo $a;

В этом примере мы присвоили переменной $a значение, которое вернула нам

функция случайного числа, и по выполнению скрипта будет выводиться

случайное число.

Также есть ещё функция по определению позиции определённого символа в

тексте:

<?php
$text = "абвгдеёжзийклмн";
$p = strpos ( $text, "г" );
echo $p;

Как видите из этого примера в функцию добавился в обработку аргумент,

позволяющий себя не прописывать изначально, если его нет, то он будет

равен 20. На этом всё практикуйтесь. И попробуйте создать функцию

которая обрабатывала бы минуты, то есть у Вас 2 минуты, то должно

вывестись 120 секунд.

Здесь Вы можете видеть, что функция для определения позиции символа

называется strpos, в скобках которой первой пишется переменная с

текстом, в которой нужно будет определить позицию определённого символа,

а после пишется сам символ, как число, так и буква, или что угодно,

также вместо символа можно писать переменную содержащюю этот символ.

Если выполнить этот скрипт, то на экран выведется 3, а почему 3, а не 4,

ведь буква Г стоит на четвёртой позиции, а потому что функция начинает

отсчёт с нуля, что значит, что буква А будет на 0 позиции, а

следовательно буква Г на 3.

А теперь давайте попробуем создать свою функцию.

Для начала посмотрим какое строение у функции:

<?php
function myfunc (аргументы) {
 
    какие-то действия;   
    
}

Сдесь функция объявляется словом function далее идёт имя функции, имя

может быть любое главное чтобы оно было целиком из английских букв и в

нём не было пробелов, пробелы можно заменить нижним подчёркиванием _ .

После названия в скобках идут аргументы, переменные которые будут

обрабатываться в функцие.

После фигурные скобки в которых будут выполняться какие-то действия над

аргументами.

Для начала давайте напишем простую функцию без аргументов:

<?php
function myfunc() {
    
    echo "Это моя функция";   
}
myfunc(); /* Выполняем функцию */

В этом примере мы функцие под именем myfunc сделали вывод текста "Это

моя функция", и просто потом объявив её мы смогли вывести этот текст, а

точнее выполнить все действия, которые были заложенны в теле функции.

А если мы захотим значение функции ( в нешем случае текст ) присвоить

переменной, тогда нужно будет вместо echo писать return - что значит

вернуть значение, и при использовании этой команды у функции будет своё

значение как у переменной, и уже после этого мы сможем присвоить

значение функции какой-то переменной.

<?php
function myfunc() {
    
    return "Это моя функция";   
}
$a = myfunc();
echo $a;

Теперь давайте немного усложним код, попробуем использовать у себя в

функцие аргументы - какие-то значения.

Представим, что у нас есть переменная $name, и нам нужно обработать её

так, чтобы вместо имени выводилось приветственное сообщение этому имени.

<?php
$name = "Стас";
function myfunc($name) {
    
    $hello = "Привет, ";
    
    $hello .= $name;
    
    $hello .= "!";
    
    return $hello;   
}
$hi = myfunc($name);
echo $hi;

По выполнению этого скрипта на экране появится надпись - Привет Стас!

Как видите у нас появились аргументы, и в низу при присваивании

переменной зачение функции, в скобки мы написали обрабатываемую

переменную

А теперь представьте, что у Вас есть такая же функция, только Вы не

уверены, что у Вас будет один аргумент, и Вам надо автоматически

присвоить этому аргументу значение

<?php
$name = "Стас";
function myfunc($name, $age = 20) {
    
    $hello = "Привет, ";
    
    $hello .= $name;
    
    $hello .= "! ";
    
    $hello .= "Твой возраст - ";
    
    $hello .= $age;
    
    return $hello;   
}
$hi = myfunc($name);
echo $hi;
Поделиться...
twitter.com facebook.com vkontakte.ru mail.ru google.com bobrdobr.ru
Комментариев: 2
  1. Можно ли подробнее объяснить, в чем заключается полезность функции по определению позиции определённого символа в тексте и где её можно использовать?

  2. Можно ли подробнее объяснить, в чем заключается полезность функции по определению позиции определённого символа в тексте и где её можно использовать?

    Скажем, Вам нужно проверить насколько правильные передали данные через форму, нужно например определить есть ли в переданном тексте определённые слова, пускай Ваша форма проверяет код, то можно не писать сложные регулярные выражения, а при помощи функции pos определять есть ли в переданных данных, нужные теги...

    То-есть эта функция хорошо подходит для поиска!

Оставьте свой комментарий!

Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

Если вы уже зарегистрированы как комментатор, укажите пароль и свой действующий email.

(обязательно)