Рейтинг@Mail.ru
[Войти] [Зарегистрироваться]

Наши друзья и партнеры

UnixForum
Альтернативная энергия

Беспроводные выключатели nooLite

Книги по Linux (с отзывами читателей)

Библиотека сайта или "Мой Linux Documentation Project"

Введение в PHP

By Adam Trachtenberg and David Sklar  (8/3/99)
Перевод на русский язык Н.В.Костроминой (30.11.2000 г.).

Синтаксис PHP

С основами синтаксиса PHP Вы знакомы. Следующий код

<?php
echo "Hello, World!";
?>

дает

Hello, World!

Имена переменных обозначаются знаком $. То же самое "Hello, World!" можно получить следующим образом:

<?php
$message = "Hello, World!";
echo $message;
?>

Конкатенация (присоединение) строк осуществляется с помощью . (точки); обычные арифметические операции определяются так, как Вы того и ожидаете:

<?php
$greeting = "Hello ";
$num = 3 + 2;
$num++;
echo "$greeting $num people!";
?>

даст

Hello 6 people!

PHP имеет полный комплект операторов и они работают именно так, как Вы того ожидаете, особенно если у Вас имеется опыт работы с C или C++. При работе с PHP можно придерживаться простого правила: "Если сомневаешься, попробуй: скорее всего оно именно так и работает."

Так же, как и в Perl, строка, заключенная в двойные кавычки, означает, что встречающиеся в этой строке переменные будут заменены их значениями, в то время как если строка заключена в одинарные кавычки, такая замена не производится. Так

<?php
$name = 'Susannah';
$greeting_1 = "Hello, $name!";
$greeting_2 = 'Hello, $name!';
echo "$greeting_1\n";
echo "$greeting_2\n";
?>

даст

Hello, Susannah!
Hello, $name!

Обратите внимание на то, что \n в строке означает переход к новой строке, совсем как в Perl или в C. Однако это работает только в тех строках, которые взяты в двойные кавычки.

Переменные

PHP обеспечивает доступ к переменным окружения как к регулярным переменным (as regular variables), включая переменные окружения, которые установлены сервером для CGI-программ (даже если Вы запустили PHP как модуль). Поэтому, если на странице "http://www.domain.com/farm/cattle/cow-cow.cow.html" содержится PHP-код

<?php
echo "[$REQUEST_URI]";
?>

то на выводимой странице Вы увидите [/farm/cattle/cow-cow-cow.html]

Массивы

Индексы массивов (как обычных, так и ассоциативных) задаются в квадратных скобках ([ и ]):

$fruit[0] = 'banana';
$fruit[1] = 'papaya';
$favorites['animal'] = 'turtle';
$favorites['monster'] = 'cookie';

Если Вы присваиваете какое-то значение элементу массива, не указывая номера элемента (оставляете поле индекса пустым), PHP присоединяет объект к концу массива. Так для приведенного выше примера с массивом $fruit можно достичь того же самого результата, написав:

$fruit[] = 'banana';
$fruit[] = 'papaya';

Вы можете также применять многомерные массивы:

$people['David']['shirt'] = 'blue';
$people['David']['car'] = 'minivan';
$people['Adam']['shirt'] = 'white';
$people['Adam']['car'] = 'sedan';

Создать массив можно также путем вызова функции array():

$fruit = array('banana','papaya');
$favorites = array('animal' => 'turtle',
                    'monster' => 'cookie);

или

$people = array ('David' => array('shirt' => 'blue',
                                    'car' => 'minivan'),
                 'Adam' => array('shirt' => 'white',
                                    'car' => 'sedan'));

Встроенная функция count() выдает число элементов в массиве.

$fruit = array('banana','papaya');
print count($fruit);

выдаст

2

Управляющие конструкции

Вы можете использовать операторы цикла, такие как for и while. В результате выполнения оператора

for ($i = 4; $i < 8; $i++) {
   print "I have eaten $i bagels today.\n"; }

получим

I have eaten 4 bagels today.
I have eaten 5 bagels today.
I have eaten 6 bagels today.
I have eaten 7 bagels today.

Тот же самый результат даст

$i = 4; while ($i < 8) {
   print "I have eaten $i bagels today.\n";
   $i++;
}

Вы можете также использовать конструкции с if и elseif:

if ($user_count > 200) {
    print "Сайт сейчас перегружен!";
} elseif ($user_count > 100) {
    print "Сайт активно используется!";
else {
    print "Сайт свободен - подключились только $user_count пользователей.";
}

Сформулированное выше правило "Пробуй!" вполне применимо и в части управляющих конструкций. Вы можете использовать конструкции с switch, do...while и даже ?:.

К началу страницы Простая форма


David Sklar is the CTO of Student.Net Publishing.
Adam Trachtenberg is the Vice President for Production of Student.Net Publishing.


Эта статья еще не оценивалась
Вы сможете оценить статью и оставить комментарий, если войдете или зарегистрируетесь.
Только зарегистрированные пользователи могут оценивать и комментировать статьи.

Комментарии отсутствуют