68930

Посилання, умовний оператор

Лекция

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

Неважко здогадатися що виведе програма 66. Краще використовувати жорсткі посилання: хоч би виходячи з того що для них потрібний один оператор. Умовний оператор Проблему вибору можна без докорів совісті віднести до глобальних проблем.

Украинкский

2014-09-27

43 KB

0 чел.

Лекція № 6

Тема:  Посилання, умовний оператор

План

  1.  Жорсткі посилання
  2.  Символічні посилання
  3.  Умовний оператор

Як вже наголошувалося раніше, в PHP немає такого поняття, як покажчик. Добре це або погано — складно сказати. Те, що є гідністю C — покажчики — одночасно є його недоліком — аж надто там все заплутано, помилки, пов'язані з покажчиками, дуже важко знайти. Особисто мені більше подобається ідеологія покажчиків в мові Pascal: ви можете нормально працювати, як з покажчиками, так і без них. У будь-якому випадку, більше, на що нам доводиться розраховувати в PHP — це посилальні змінні або просто посилання. Посилання бувають двох типів: символічні і жорсткі. Останній тип посилань з'явився в четвертій версії інтерпретатора.

Жорсткі посилання

Жорстке посилання — це просто псевдонім імені іншої змінної. Посилання на посилання на змінну (багаторівневі посилання), як в мові Perl, не підтримуються. Для створення жорсткого посилання використовується оператор &:

<? $х   =   77; $link   =   S$x; $link = 66; echo $link; ?>

Неважко здогадатися, що виведе програма — 66. Для розриву зв'язку між змінною і посиланням використовується функція UnSet:

UnSet ($link);

Саму змінну не можна видалити до тих пір, поки на неї посилається хоч би одне посилання.

Символічні посилання

Символічне посилання — це звичайна змінна, що містить ім'я іншої змінної. Для доступу до значення посилання використовується подвійний знак долара $$:

<?

$x = 77;

$link = "x"; // символічне посилання на змінну $х

echo $$link; // виводить 77

echo $link; // виводить x

$$link = 66; // аналогічно $х = 66

echo $x; // виведе 66

?>

Я не рекомендую використовувати символічні посилання, їх потрібно використовувати в самих крайніх випадках, яких буде небагато. Використання символічних посилань може і без того заплутати заплутану програму. Краще використовувати жорсткі посилання: хоч би виходячи з того, що для них потрібний один оператор $. А взагалі прагніть не використовувати посилання — так ваше життя стане трохи простіше.

Конструкції мови PHP дуже схожі на конструкції мови C, тому, якщо ви знаєте мову C, дуже швидко освоїте PHP. Потрібно відмітити, що синтаксис PHP дуже лаконічний, а ми знаємо, що «стислість — сестра таланту». PHP ще раз дозволяє нам переконатися в цьому.

Умовний оператор

Проблему вибору можна без докорів совісті віднести до глобальних проблем. Як часто вам доводиться вибирати? То чом би не примусити комп'ютер зробити вибір за нас? Для цього і призначений умовний оператор.

Конструкція if-eIse (умовний оператор) є, напевно, найпоширенішою конструкцією в програмах. Яка ж серйозна програма не використовує цю конструкцію?

Синтаксис конструкції if-else такий:

if (логічний   вираз) оператор_1;

else оператор_2;

Перший оператор буде виконаний, якщо логічний вираз істинний, другою — якщо логічний вираз помилковий. Можна також використовувати скорочену форму конструкції, без другого оператора:

if    (логічний   вираз) оператор_1;

В цьому випадку ми можемо обійтися без «else». Якщо вам потрібно виконати не одного оператора, а цілу групу, тоді цих операторів слід помістити в блок операторів { }:

if    (логічний   вираз) {

оператор_1;

оператор_i;

} else {

оператор_i+l;

оператор_n;

}

Здається, я ще жодного разу не звертав уваги на роздільник операторів — це символ крапка з комою ";". Зовсім очевидно, що ми можемо записати декілька операторів в один рядок:

if (логічний вираз) { оператор_1; ... оператор_i; }

В даному випадку після фігурної дужки можна ставити крапку з комою, а можна і не ставити. Але якщо ви думаєте використовувати повну конструкцію (тобто з «else»), тоді крапка з комою не ставиться. Якщо ж замість блоку операторів використовується тільки один оператор (див. загальний синтаксис), тоді крапка з комою після нього (перед else) обов'язкова:

if    ($a>5)    echo   "a>5"; else   echo   "a<=5";

Існує ще один варіант конструкції if-else. Ось його синтаксис:

if    (логічний   вираз   1)

оператор_1 ;

elseif    (   логічний   вираз   2   )

оператор_2;

else

оператор_3;

Здається дана конструкція не дуже зручна, тому я раджу використовувати її класичний варіант.

Для повноти опису даної конструкції потрібно сказати, що ви можете використовувати ще один — третій альтернативний варіант (цього разу вже точно останній) конструкції:

if    (логічний   вираз   1):

оператор_1;

elseif    (   логічний   вираз   2   ) :

оператор_2;

else :

оператор_3;

endif

Якщо пропустити крапки з комою, то ви отримаєте повідомлення про помилку.


 

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

26250. Внесение удобрений 70.5 KB
  Домашнее задание Внесение удобрений Цель и задачи. Сформировать умение оперативно принимать решение по выбору оптимальных норм способов и сроков внесения удобрений в различных агротехнологиях в зависимости от изменяющихся агроэкологических и производственных условий. Рассматриваются нормы сроки и способы внесения удобрений в том числе микроудобрений в зависимости от агроэкологических и производственных условий. Сроки и способы внесения удобрений.
26251. Оценка устойчивости ландшафтов и агроландшафтов и их антропогенной преобразованности 71 KB
  13 Практическое задание Оценка устойчивости ландшафтов и агроландшафтов и их антропогенной преобразованности Цели и задачи. Сформировать представление об устойчивости природных ландшафтов и агроландшафтах видах экологической устойчивости определяющих ее факторах о цене экологической устойчивости агроландшафтов и принципах ее обеспечения. Затраты на ее поддержание определяют цену устойчивости агроландшафта. Дать характеристику экологической агрономической и экономической устойчивости определенного агроландшафта.
26252. Оценка экологической емкости агроландшафта 49 KB
  14 Домашнее задание Оценка экологической емкости агроландшафта Цели и задачи. Сформировать представление о способности агроландшафта воспринимать антропогенную нагрузку при сохранении экологической устойчивости и критериях ее оценки. Формируется понятие экологической емкости агроландшафта и определяющие ее условия. Дать оценку экологической емкости агроландшафта на примере конкретного земельного массива Оценка экологическая емкость агроландшафта Чтобы обеспечить экологическую устойчивость агроландшафта необходимо задать такие параметры...
26253. Значение и место альтернативных технологий в земледелии 47 KB
  Сформировать представление об агротехнологиях альтернативного земледелия как социальном явлении их формах причинах агрономических ограничений возможностях использования. Принципы и источники альтернативного земледелия его мотивации. Основателем данного направления считают австрийского философа Рудольфа Штайнера сформулировавшего в 1924 году принципы так называемого биодинамического земледелия как развитие созданного им мистического учения антропософии. В то же время продукция органического земледелия отнюдь не застрахована от природных...
26254. Агроэкологические требования сельскохозяйственных культур как исходный критерий агрооценки земель 38.5 KB
  Близкие по условиям возделывания конкретных сельскохозяйственных растений ЭАА объединяются в агроэкологические типы земель в пределах которых формируются производственные участки. Пока что не все аспекты агроэкологической оценки растений разработаны с достаточной полнотой особенно почвенные некоторые трудно поддаются формализации. Следует ускорить разработку региональных рекомендаций по данному вопросу с учетом местных условий культур сортов растений. Отношение растений к свету: размещение растений по реакции на продолжительность дня...
26255. Выбор, размещение и сельскохозяйственных культур и сортов и разработка агроэкологических карт в АгроГИС 64 KB
  Ключевые слова: виды сорта культур агроэкологическая оценка интенсивные пластичные устойчивые сорта агроэкологическая карта категории пригодности. Выбор культуры и сорта. Выбор культуры и сорта Выбор культур для региона конкретного хозяйства и поля осуществляют на основе оценки их биологических требований и средообразующего влияния. Показатели агроэкологической оценки культур указанные в паспорте сорта сравниваются с соответствующими параметрами агроландшафта.
26256. Управление продукционным процессом сельскохозяйственных культур и агроценозами 54 KB
  В процессе генерации технологических решений с помощью специально разработанного интерфейса СППР автоматически формируется задание на выполнение конкретной операции в режиме точного земледелия которое затем загружается в бортовой компьютер сельскохозяйственной техники. В зависимости от режима реализации операции различают два типа задания: Карта операции режим функционирования offline Карта агротребований на выполнение операции режим online Карта операции электронная карта поля где для каждого однородного участка поля указана...
26257. Защита растений от вредителей и болезней в агроценозах 327.5 KB
  Практическое занятие Защита растений от вредителей и болезней в агроценозах Цели и задачи. Развить способность практиковать интегрированный подход к защите растений и умение использовать современные методы и средства борьбы с вредителями и болезнями. Рассматриваются агротехнические химические и биологические методы защиты растений от болезней и вредителей при различных уровнях интенсификации агротехнологий и интегрированном подходе. Разработать систему мер по защите растений в заданном севообороте при заданной фитосанитарной ситуации.
26258. Создание картограмм агрофизического состояния почв и интерпретация результатов в геоинформационных системах (ГИС) 384 KB
  Практическое занятие Создание картограмм агрофизического состояния почв и интерпретация результатов в геоинформационных системах ГИС Цели и задачи. Приобретение навыков картографирования агрофизического состояния почв с использованием педотрансферных функций и ГИСтехнологий. Рассматривается методика разработки картограмм агрофизических свойств почв в геоинформационных системах на примере плотности почв и запасов продуктивной влаги. Освоить методику картографирования физических и воднофизических свойств почв на конкретном первичном...