Конструкція PHP if else: прихована логіка


Опубликованно 19.02.2018 13:07

Конструкція PHP if else: прихована логіка

Умовна конструкція в реалізації від PHP if else практично не відрізняється від аналогічних правил інших мов програмування, і чекати особливих відмінностей не доведеться ще тривалий час.

В далекі часи оператор присвоювання в мові Pascal був «:=», в той час як C/C++ впевнено управлявся одним «=». Донині PHP умова if else може використовувати три «дивних» варіанту: «=», «==», «===». Дивно також використання символу «$» для позначення змінної (JavaScript прекрасно обходиться без символів уточнення змінних). Між тим, зростання числа програмістів, що використовують PHP повсякденно - найкраще свідчення практичності мови. Суть умовної конструкції

Умови визначають розгалуження алгоритму. В основі лежить умови вираз, результат виконання якого завжди тільки true або false. У зміст цього виразу може бути використане будь-яку кількість операторів і викликів функцій. Це означає, що умова - це, перш за все, алгоритм.

Історично умовний вираз записується так:(выражение1) [символ порівняння] (выражение2).

Цей момент дає можливість другого виразу використовувати результати роботи першого. Цього мало хто надає значення, але зате кожен програміст іноді забуває, що символ присвоювання «=» - це не символ порівняння «==», а відмінність між «==» та «===» є вірним підставою переписати умову таким чином, щоб можна було застосувати однозначне порівняння «<» або «>».

Тут конструкція PHP if else - як приклади «співпраці» двох виразів. Перший вираз инкрементирует змінну $iA (=2) і обчислює змінну $iC (=6) у функції scfAB(). Другий вираз має зміненим значенням $iC, яке множить на 20 і инкрементирует змінну $iB.Використання «=», «==» та «===»

В PHP конструкція if else не передбачає використання оператора «=», оскільки це оператор присвоювання, але його використання все ж можливо. Важливо розуміти, що помилкове зазначення «=» замість «==» в більшості випадків зробить умову істинним, незалежно від того, що в ньому записано.

Для PHP if () else передбачається застосування тільки «==» або «===». Перше означає рівність значень після перетворення типів, друге розраховує на відповідність значень і їх типів. Інші оператори (більше, менше, дорівнює ...) не викликають двозначного тлумачення.Особливість символів та їх застосування

Опис змінних та умовна конструкція на PHP if else дозволяють сформулювати проблему, яка існує досить давно і стала настільки звичною, що практично не помітна.

За великим рахунком, оператор порівняння не особливо потрібен. По-перше, у всякому мові є конструкція виконання виразу (PHP - не виняток), яке визначено динамічно в ході виконання скрипта. По-друге, абсолютно нічого не заважає формувати алгоритм розгалуження по ходу виконання основного алгоритму.

Просто PHP if else, як і його молодший брат switch case, звичні і воспринимаемы як програмістами, так і користувачами, які звикли контролювати роботу програмістів.

Характерна помилка, яка часто допускається: «=» або «==» - умови допустимо друге, але ніяк не перше (якщо мова не йде про виключення з правил).

Символ «$» для опису змінної надмірний. Якщо в одній мові можна обійтися без додаткової ідентифікації імені змінної, то в PHP це також можна зробити. Стало традиційним відокремлювати «=» від «==». Перше - це присвоювання, друге - це порівняння.

Між тим, як тільки інтерпретатор PHP «зайшов» конструкцію if else - немає жодних сумнівів, що тут буде умова. Більш того, умова з синтаксису мови PHP: if () else - завжди в дужках, тобто ідентифікувати «=» в якості оператора порівняння завжди можливо.

Інше питання, що використання «$» і тріади: «=», «==» та «===» стало звично, і змінити що-небудь малоперспективно. Але, маніпулюючи умовою, бажано мати на увазі сказане. В сучасних мовах багато класичних конструкцій, але настає час, коли доведеться переглянути їх зміст.

Програмування набуває статус серйозного інструменту обробки динамічно мінливої інформації, а це виходить за межі розуміння, чому всередині і поза конструкції PHP if else оператор «=» зберігає свій сенс.Умови та об'єкти

З того моменту, як об'єкти стали природними для будь розробки, умовна конструкція PHP if else збереглася, але її місце змістилося в тіло об'єкта. Програміст може використовувати умови, як йому це зручно, але, розробляючи об'єкти, він переводить момент прийняття рішення на об'єкт.

Система об'єктів програми - це логіка взаємодії, тобто прийняття рішень про те, як саме роботу далі приймає об'єкт. Якщо умовна конструкція маніпулює об'єктами, а не об'єкти керують ходом алгоритму, значить, в скрипті щось зроблено не так.



Категория: Техника