Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Что такое PHP.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
121 Кб
Скачать
☆

Основы языка

С картинки в родном букваре ;) то есть с чтения (или хотя бы просмотра) документации. Не пугайтесь. В конце - концов, если вы собираетесь работать на php вам когда-либо все равно придется заглянуть туда и лучше, если вы это сделаете сейчас, благо мануал у php очень удобный, легкий, не требующий длительного штудирования, но основы языка нужно знать и без чтения тут никак не обойтись.

Вообще я потратил не мало времени за написанием скриптов на php и если это время можно измерить сотнями часов, то время, потраченное на поиск нужных функций или решение проблем с осуществлением каких-либо специфических операций, в общем время просиженной за документаций, как ни странно, не более одного часа! Так что еще раз повторю - не пугайтесь и флаг (очки) вам в руки.

Начнем с того, что для PHP сущестует 4-е способа отделения его от общего кода HTML (имеется ввиду для интерпретации)

1. <? echo ("SGML инструкции\n"); ?>

2. <?php echo("XML документ\n"); ?>

3. <script language="php">

echo ("специально для FrontPage");

</script>

4. <% echo ("ASP-стиль"); %>

<%= $variable; # Комментарий "<%echo .." %>

Далее необходимо коненчо сказать и о том, что инструкции в PHP отделяются друг от друга сишно-паскалевско-перловым способом - точкой с запятой. Хотя перед закрывающим тегом (?>) точку с запятой ставит не обязательно.

<?php echo "This is a test";

echo "This is a test also" ?>

PHP поддерживает комментарии в стиле 'C', 'C++' и Unix shell. Например:

<?php

echo "test"; // Комментарий в стиле C++

/* Это многострочный

комментарий в стиле C++*/

echo "test2";

echo "Test3"; # Это unix-shell комментарий

?>

Типы

PHP поддерживает следующие типы данных:

  • Integer (целочисленные)

  • floating-point numbers или double (числа с плавающей запятой)

  • string (строки, текст)

  • array (массивы)

  • object (обьекты)

Преобразование типов происходит следующим образом. Если переменной при равнивается строка (текст в кавычках) то эта переменная становится строковой. Если-жы c ней совершается одна из многих математических функций или она приравнивается численой переменой, она становится численной, причем если приравниваетс яне целому значению - то станет типом double. Пример:

$foo = "0"; // $foo строка (ASCII 48)

$foo++; // $foo тоже строка "1" (ASCII 49)

$foo += 1; // $foo теперь integer (2)

$foo = $foo + 1.3; // $foo теперь double (3.3)

$foo = 5 + "10 паросят"; // $foo теперь снова integer (15)

$foo = 5 + "10 ящиков"; // $foo и по прежнему integer (15)

значение в скобках - результирующее значение переменной

Преобразовывать типы можно чистА в сишном стиле:

$foo = 10; // $foo это integer

$bar = (double) $foo; // $bar это double

Разрешенный преобразования:

  • (int), (integer) - cast to integer

  • (real), (double), (float) - cast to double

  • (string) - cast to string

  • (array) - cast to array

К стати, определить тип переменной можно функциями gettype(), is_long(), is_double(), is_string(), is_array() и is_object().

ОБЛАСТЬ ВИДИМОСТИ ПЕРЕМЕННЫХ

Во-первых. Все переменные начинаются с символа $

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

$a = 1; /* глобальное определение */

Function Test () {

$a=2;

echo $a; /* локальная переменная */

}

Test ();

echo $a;

Таким образом в функции используется локальная, собственная переменная и результатом прогарммы будет вывод чисел 2 и 1, а не 2 и 2, как некоторые могли подумать.

Ну а если вы хотите в функции использовать глобальные переменные, необходимо сделать так (декларировать с помощью оператора global):

$a = 1; /* глобальное определение */

Function Test () {

global $a;

$a=2;

echo $a; /* локальная переменная */

}

Test ();

echo $a;

Теперь в функции вы переопредилили глобальную переменную и вывод будет числа 2 и 2. Но есть и другой способ добраться до глобально-определенных данных - через ассоциативный массив $GLOBALS[]. Пример предыдущей программы, реализованный новым способом:

$a = 1; /* глобальное определение */

Function Test () {

$GLOBALS["a"]=2;

echo $a; /* локальная переменная */

}

Test ();

echo $a;

Обратите внимание переменная в массиве указывается без символа $

Кроме этог о PHP предоставляет возможность исопльзовать статические переменный. Все как в C/C++.

Function Test () {

static $a = 0;

echo $a;

$a++;

}

Test();

Test();

Test();

Результатом выполнения этого скрипта будет вывод чисел 0,1 и 2.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]