2 Синтаксис

Матеріал з Wiki TNEU
Перейти до: навігація, пошук


Зміст

Загальні поняття

Мова PHP спеціально призначена для веб-програмування. PHP поєднує переваги мов C і Perl і при цьому вельми простий у вивченні і володіє значними перевагами перед традиційними мовами програмування. Синтаксис PHP дуже нагадує синтаксис мови C і багато в чому запозичений з таких мов як Java і Perl. Програміст С дуже швидко освоїть мову PHP і зможе використовувати її з максимальною ефективністю. У принципі, в PHP є практично всі оператори і функції, наявні в стандартному GNU С (або їх аналоги), наприклад є цикли (while, for), оператори вибору (if, switch), функції роботи з файловою системою і процесами (fopen, *dir, stat, unlink, popen, exec), функції введення-виведення (fgets, fputs, printf) і безліч інших. Мета даного розділу – коротке ознайомлення з основами синтаксису мови PHP. Більш детальну інформацію щодо конкретних складових синтаксису PHP ви знайдете у відповідних розділах.


PHP і HTML

Приклад найпростішого скрипта на PHP наведено нижче: <html>

    <head>
        <title> Приклад </title>
    </head>
    <body>
        <?php
        echo "Привіт, я - скрипт PHP!" ;
        ?>
    </body>

</html> HTML-код коректно обробляється інтерпретатором PHP.

Початок сценарію може спантеличити. Головна особливість (до речі, надзвичайно зручна) мови PHP: PHP-скрипт може взагалі не відрізнятися від звичайного HTML-документа.

Сам код сценарію міститься у спеціальному тезі, що починається з "<?php" і закінчується закриваючим "?>" (без лапок). Між цими двома частинами тега текст інтерпретується як програма, і в HTML-документ не потрапляє. Для виводу тексту на сторінку використовується функція echo.

Отже, будь-який текст, який розташований поза тегом <?php ?>, виводиться в браузер безпосередньо. У цьому і полягає головна особливість PHP, на відміну від Perl і C, де вивід здійснюється тільки за допомогою стандартних операторів.

Типи даних в PHP

PHP підтримує вісім простих типів даних. Чотири скалярних типи:

  • boolean (двійкові дані)
  • integer (цілі числа)
  • float (числа з плаваючою крапкою або ‘double’)
  • string (рядки)

Два змішаних типи:

  • array (масиви)
  • object (об’єкти)

І два спеціальних типи:

  • resource (ресурси)
  • NULL (“порожні”)

Існують також кілька псевдотипів:

  • mixed (змішані)
  • number (числа)
  • callback (зворотного виклику)

Докладно про типи даних можна подивитись у розділі типи даних в PHP.


Вирази в PHP

Основними формами виразів є константи і змінні. Наприклад, якщо ви записуєте "$a = 100", ви привласнюєте '100' змінній $a. Тобто $a – це змінна, = – це оператор присвоєння. Виразом може бути і змінна, якщо їй зіставлять певне значення: <source lang="php">

<?php
  $x = 7;
  $y = $x;
?>

</source>

У першому рядку розглянутого прикладу виразом є константа 7, а у другому рядку – змінна $x, тому що раніше їй було присвоєно значення 7. $y = $x також є виразом. Докладно про вирази можна подивитись у статті вирази у PHP

Оператори PHP Оператором називається щось, що складається з одного або більше значень (виразів, якщо говорити на жаргоні програмування), яке можна обчислити як нове значення (таким чином, вся конструкція може розглядатися як вираз). Приклади операторів PHP:

Оператори присвоєння: <?php $a = ($b = 4) + 5; // результат: $a встановлена значенням 9, змінній $b присвоєно 4. ?> Комбіновані оператори: <?php $a = 3 ; $a += 5 ; // встановлює для $a значення 8, аналогічно запису: $a = $a + 5; $b = "Hello" ; $b .= "There!" ; // встановлює для $b строкове значення "Hello There!", як і $b = $b. "There!"; ?> Строкові оператори: <?php $a = "Hello" ; $b = $a . "World!" ; // $b містить рядок "Hello World!"

$a = "Hello" ; $a .= "World!" ; // $a містить рядок "Hello World!" ?> Існують також логічні оператори та оператори порівняння, проте їх прийнято розглядати в контексті керуючих конструкцій мови. Детальну інформацію по операторам можна знайти у розділі оператори PHP.

Керуючі конструкції мови PHP Основними конструкціями мови PHP є:

Умовні оператори (if, else); Цикли (while, do-while, for, foreach, break, continue); Конструкції вибору (switch); Конструкції оголошення (declare); Конструкції повернення значень (return); Конструкції включень (require, include). Приклади конструкцій мови PHP: <?php if ($a > $b) echo "значення a більше, ніж b" ; ?> Наведений приклад наочно показує використання конструкції if спільно з оператором порівняння ($a> $b). У наступному прикладі якщо змінна $a не дорівнює нулю, буде виведено рядок "значення a істинно (true)", тобто показано взаємодію умовного оператора (конструкції) if з логічним оператором:

<?php if ($a) echo "значення a істинно (true)" ; ?> А ось приклад циклу while:

<?php $x=0; while ($x++<10) echo $x; // Виводить 12345678910 ?> Інформацію по всім керуючим конструкціям ви можете отримати в розділі Керуючі конструкції PHP

Користувальницькі функції в PHP У будь-якій мові програмування існують підпрограми. У мові C вони називаються функціями, в асемблері - підпрограмами, а в Pascal існують два види підпрограм: процедури і функції. У PHP такими підпрограмами є користувальницькі функції.

Підпрограма - це спеціальним чином оформлений фрагмент програми, до якого можна звернутися з будь-якого місця всередині програми. Підпрограми істотно спрощують життя програмістам, покращуючи читабельність вихідного коду, а також скорочуючи його, оскільки окремі фрагменти коду не потрібно писати кілька разів.

Наведемо приклад для користувача функції на PHP:

<?php function funct() { $a = 100;

echo "

$a

";

} funct(); ?> Сценарій виводить 100. Користувальницьким функціям в PHP можна передавати аргументи і отримувати повертаючиїся функціями значення. Детальну інформацію по користувальницькі функції можна знайти у розділі користувальницькі функції PHP.

Вбудовані (стандартні) функції PHP PHP містить величезну кількість вбудованих функцій, здатних виконувати завдання різного рівня складності.

ООП і PHP PHP має досить хорошу підтримку об'єктно-орієнтованого програмування (ООП). У PHP можна створювати класи різних рівнів, об'єкти і досить гнучко ними оперувати. Ось приклад PHP класу і його використання:

<?php // Створюємо новий клас Coor: class Coor{ // Дані (властивості): var $name ;

// Методи:

function  Getname() {
echo "

John

" ;
}

}

// Створюємо об'єкт класу Coor: $object = new Coor ; // Отримуємо доступ до членів класу: $object -> name = "Alex" ; echo $object -> name ; // Виводить 'Alex' // А тепер отримаємо доступ до методу класу (фактично, до функції усередині класу): $object -> Getname (); // Виводить 'John' великими літерами ?>


Мова PHP спеціально призначена для веб-програмування. PHP поєднує переваги мов C і Perl і при цьому вельми простий у вивченні і володіє значними перевагами перед традиційними мовами програмування. Синтаксис PHP дуже нагадує синтаксис мови C і багато в чому запозичений з таких мов як Java і Perl. У принципі, в PHP є практично всі оператори і функції, наявні в стандартному GNU С (або їх аналоги), наприклад є цикли (while, for), оператори вибору (if, switch), функції роботи з файловою системою і процесами (fopen, *dir, stat, unlink, popen, exec), функції введення-виведення (fgets, fputs, printf) і безліч інших. Синтаксис будь-якої мови програмування набагато легше “відчути” на прикладах, ніж використовуючи якісь діаграми та схеми. Тому наведемо приклад найпростішого скрипта на PHP:

<html>

   <head>
       <title> Приклад </title>
   </head>
   <body>
       <?php
       echo "Привіт, я - скрипт PHP!" ;
       ?>
   </body>

</html> Ви вже напевно помітили, що це класичний скрипт, з якого починають вивчення різні мови програмування. Зверніть увагу, що HTML-код коректно обробляється інтерпретатором PHP. Сам код сценарію починається після відкриваючого тега <?php і закінчується закриваючим ?>. Отже, між цими двома тегами текст інтерпретується як програма, і в HTML-документ не потрапляє. Якщо ж програмі потрібно щось вивести, вона повинна скористатися оператором echo. Отже, PHP влаштований так, що будь-який текст, який розташований поза програмних блоків, обмежених <?php і ?> , виводиться в браузер безпосередньо. У цьому і полягає головна особливість PHP, на відміну від Perl і C, де вивід здійснюється тільки за допомогою стандартних операторів.

Особисті інструменти
Простори назв

Варіанти
Дії
Навігація
Інструменти