PHP/Введення та основи: відмінності між версіями

Вилучено вміст Додано вміст
JTs (обговорення | внесок)
→‎Heredoc і nowdoc: уточнення
JTs (обговорення | внесок)
→‎Рядок (string): оформлення, доповнення
Рядок 83:
=== Числа (integer&float) ===
=== Рядок (string) ===
Рядки можна записуватизаписуються в одинарних ('' ' '') чи в подвійних ('' " '') лапках, а також спеціальним синтаксисом ''heredoc'' та ''nowdoc''. Різниця у використанні лапок в тому, що в подвійних лапках PHP читає [[#Cпецсимволи|спецсимволи]] і оброблює змінні. Наприклад:
<div style="-webkit-column-count:2">
;Код
<source lang="php"><?php $name = "Саша";
echo 'Привіт, $name!\nЯк справи?'; // Одинарні лапки, виводить символи, як є.
echo "Привіт, $name!\nЯк справи?"; // Подвійні лапки, опрацьовує символи і змінні.
</source>
 
Рядок 99:
 
</div>
====Heredoc і nowdoc====
Ще існують такі способи визначення рядків, як ''heredoc'' та ''nowdoc''-синтаксис. Вони є аналогом [[HTML#Теги_форматування|тегу <nowiki><pre></nowiki> в HTML]], тобто вони зберігають всі символи форматування, такі як табуляції, пробіли, і переноси рядків.
 
Різниця heredoc і nowdoc в тому, що ідентифікатор в nowdoc пишеться в одинарних лапках і по суті працює, як звичайні одинарні лапки (не розрізнює спецсимволи і змінні)
;Використання :
Ідентифікатор завжди пишеться заголовними літерами.
{|
|-
! Heredoc || Nowdoc
|-
|
<<<ІДЕНТИФІКАТОР''(перенос рядка)''
Форматований рядок''(перенос рядка)''
ідентифікатор>>>
<<<'ІДЕНТИФІКАТОР'''(перенос рядка)''
Форматований рядок''(перенос рядка)''
'ідентифікатор'>>>
|}
 
====Спецсимволи====
Екранування (знаком оберненої косої риски '''\''') працює в одинарних і подвійних лапках. ТожСаме таким чином можливо виводити зарезервовані символи (лапки, знак долара):
<source lang="php">echo 'Привіт, \'світ\''; // Виведе: Привіт, 'світ'
echo "Ціна - $price \$"; // Виведе: Ціна - 100 $
</source>
Нижче представлені спецсимволи ([[w:Керувальна послідовність|керуючі послідовності]]), що розрізняє PHP в подвійних лапках чи heredoc-синтаксисом.
Рядок 124 ⟶ 144:
|}
Завдяки цьому можна складати регулярні вирази в різних системах числення (приклад регулярного виразу символу Unicode ''\u{[0-9A-Fa-f]+}'')
 
====Heredoc і nowdoc====
Ще існують такі способи визначення рядків, як ''heredoc'' та ''nowdoc''-синтаксис. Вони є аналогом [[HTML#Теги_форматування|тегу <nowiki><pre></nowiki> в HTML]], тобто вони зберігають всі символи форматування, такі як табуляції, пробіли, і переноси рядків.
 
Різниця heredoc і nowdoc в тому, що ідентифікатор в nowdoc пишеться в одинарних лапках і по суті працює, як звичайні одинарні лапки (не розрізнює спецсимволи і змінні)
;Використання :
Ідентифікатор завжди пишеться заголовними літерами.
{|
|-
! Heredoc || Nowdoc
|-
|
<<<ІДЕНТИФІКАТОР''(перенос рядка)''
Форматований рядок''(перенос рядка)''
ідентифікатор>>>
<<<'ІДЕНТИФІКАТОР'''(перенос рядка)''
Форматований рядок''(перенос рядка)''
'ідентифікатор'>>>
|}
 
<br/>