68919

Передача параметрів функції

Лекция

Информатика, кибернетика и программирование

При виклику функції func потрібно обов’язково вказати всі три параметри оскільки вони є обов’язковими. У РНР функції можуть володіти необов’язковими параметрами або параметрами за умовчанням про них ми поговоримо трохи пізніше. Функція не може змінити параметрзначення тобто він доступний...

Украинкский

2014-09-27

40 KB

0 чел.

Лекція № 12

Тема: Передача параметрів функції

План

  1.  Передача значень
  2.  Передача змінних по посиланню

Передача значень

При оголошенні функції потрібно вказати список параметрів, які можуть передаватися функції, наприклад:

function   func ($a, $b, $c)    {   ...   };

При виклику функції func () потрібно обов'язково вказати всі три параметри, оскільки вони є обов'язковими. У РНР функції можуть володіти необов'язковими параметрами або параметрами за умовчанням — про них ми поговоримо трохи пізніше.

Передача змінних по посиланню

Згідно традиції, у всіх мовах програмування є два види аргументів функцій:

параметри-значення;

параметри-змінні.

Функція не може змінити параметр-значення, тобто він доступний функції «тільки для читання» — вона може його використовувати, але не більш. Як параметр-значення необов'язково указувати змінну, можна вказати саме значення, звідси назва — параметр-значення, наприклад:

function   func($a)

(

echo   "Параметр  =  $a\n";

}

$b = 3; func(3); func($b);

Дана функція виведе рядок «Параметр = 3» двічі.

На відміну від параметрів-значень, параметри-змінні можуть бути змінені в процесі роботи функції. Тут вже не можна передавати значення, потрібно обов'язково передати змінну.

У всіх мовах програмування способи оголошень параметрів-значень і параметрів-змінних відрізнялися друга від друга. Мова РНР не стала виключенням. У мові РНР, на відміну від С немає покажчиків, тому для оголошення параметрів-змінних використовується механізм передачі змінній по посиланню.

Лістинг. Передача змінній по посиланню

<?

SFirst   =   $Second   =   5;

function   f1($f,    &Ss)

{

echo "Змінний параметрьАп";

$f = '7; $s = 10;

echo   "First   =   $f,    Second   *   Ss\n";

1

echo "Значення змінних до виклику функции\п";

echo "First = SFirst Second = SSecond\n";

fl($First, $Second);

echo "First = $First Second = $Second\n";

?>

Мал. 8.1. Виведення програми

Спочатку змінні $First і $Second рівні 5. Потім ми в тілі функції змінюємо обидва параметри — звичайний і переданий по посиланню. Як показує мал. 8.1, усередині функції параметри були змінені, а ось в основній програмі відобразилася зміна другої змінної-параметра $s, переданого по посиланню — &.


 

А также другие работы, которые могут Вас заинтересовать

77706. Технологии развития современной памяти 115 KB
  Всего за несколько десятилетий в области технологий хранения данных произошли разительные перемены а появление флешпамяти без преувеличения можно назвать революцией. Сегодня принцип хранения информации в электронных устройствах конечно отличается от условных расчётов Фейнмана но размер единичного элемента хранения известен около 40 нм в коммерческих устройствах на основе флешпамяти. Технологии устройств памяти следующего поколения будут использовать новые материалы обладать временем доступа в единицы наносекунд и хранить информацию...
77707. Трёхмерная графитовая память 35.5 KB
  На сделанных сканирующим электронным микроскопом снимках видны графитовая полоска неизменённой ячейки памяти вверху и содержащей бит данных Выход нашли исследователи из Университета Райса Rice University в Хьюстоне которые показали что родственник графена графит может быть адаптирован для создания быстрых высокоёмких устройств хранения обладающих преимуществами по сравнению с флэшпамятью которой комплектуется сегодня множество мобильных устройств. Ячейки памяти могут быть расположены в виде вертикальных массивов что в...
77709. Современные тенденции развития носителей информации 697 KB
  Интерфейс IDE Что бы ни говорили сторонники SCSI широкое распространение IDEустройств на сегодняшний день свершившийся факт. В идеале каждое IDEустройство стоит подключать к отдельному каналу в этом пожалуй заключается основное преимущество SCSI. И это одно из главных преимуществ IDE перед SCSI. SCSI Smll Computer System Interfce Несмотря на кажущееся засилье устройств с интерфейсом IDE EIDE по объемам выпуска за SCSI жесткими дисками всетаки остается около 27 рынка.
77711. УСТРОЙСТВО СОВРЕМЕННЫХ МОДЕМОВ 1011.5 KB
  Эти требования приводят к тому что в отличных по конструкции модемах одни и те же методы и протоколы реализованы различными способами. Один из вариантов исполнения модема можно представить в виде изображенном на рис. Устройство современного модема: 1 порт интерфейса DTE DCE; 2 порт канального интерфейса Рис. Устройство современного модема Модем состоит из адаптеров портов канального и DTE DCE интерфейсов; универсального PU сигнального DSP и модемного процессоров; постоянного ПЗУ ROM постоянного энергонезависимого...
77712. RAID - массивы 69.5 KB
  В своей статье Cse for Redundnt rrys of Inexpensive Discs RID избыточный массив недорогих дисков они описали каким образом можно объединить несколько дешевых жестких дисков в одно логическое устройство так чтобы в результате повышались емкость и быстродействие системы а отказ отдельных дисков не приводил к отказу всей системы. С момента выхода статьи прошло уже 15 лет но технология построения RIDмассивов не утратила актуальности и сегодня. Единственное что изменилось с тех пор это расшифровка аббревиатуры RID.