Переход в PHP:
Механизм лексического анализа должен как-то отличать PHP код от других элементов страницы. Идентивикация кода PHP называется "переходом в PHP". Существует четыре вырианта оформления перехода в PHP:
1) Стандартные теги;
2) Короткие теги;
3) Теги script;
4) Теги в стиле ASP.
Стандартные теги:
Стандартные теги используются программами PHP чаще остальных способов, что объясняется наглядностью и удобством этой формы записи:
<?php print "какой-то текст"; ?>
У стандартных тегов есть ещё одно дополнительное преимущество: за открывающейся конструкцией <? следуют смволы php, однозначно определяющие тип дальнейшего кода. Это удобно при использовании в одной странице нескольких технологий - таких, как JavaScript, серверные включения и PHP. Весь текст до закрывающегося тега ?>, интерпретируется как код PHP.
Кроткие теги теги:
Короткие теги обеспечивают наиболее компактную запись для перехода в PHP:
<? print "какой-то текст"; ?>
Теги script:
Некоторые текстовые редакторы ошибочно принимают код PHP за код HTML (то есть визуально отображаемый текст), что нарушает работу над веб страницей. Проблема решается использованием тега script:
<script language="php">
<? print "какой-то текст"; ?>
</script>
Теги в стиле ASP:
Четвёртый способ внедрения PHP кода - теги в стиле ASP (Active Server Page). Они похожи на короткие теги, описанные выше, только вместо вопросительного знака используется знак процента:
<%php print "какой-то текст"; %>
У тегов в стиле ASP есть одна особенность, делающая запись более компактной. Во внедрённый код PHP не обязательно включать команду print - знак равенства( = ), расположенный сразу открывающегося тега, указывает лексическому механизму PHP вывести значение указанной переменной:
<%= $text %>
Такая возможность есть и у кротких тегов (<?...?>).
--------------------
Коментарии в коде PHP Виды коментариев:
Коментаирии следует использовать даже в самых простых программах. В PHP существует два вида коментариев:
Однострочные коментарии используются для коротких пояснений, относящихся к локальному коду.
Многострочные коментарии используются при оформлении алгорифмов на псевдокоде и в более подробных пояснениях.
Однострочные коментарии:
При оформлении оформлении многострочных коментариев используется два вида коментирования. Оба стиля работают абсолютно одинаково, но в них используется разные служебные символы. В одном случае используется двойной символ "косой черты" (//), а вдругом - с символа фунта (#).
Многострочные коментарии:
Коментарии занимающие несколько строк, оформляются в стиле языка C - их начало и конец обазначаются символами /* и */.
Объявление переменных:
Переменная представляет собой именованую часть памяти, содержащую данные, с которыми можно выполнять операции во время выполнения программы.
Имена переменных начинаются со знака доллара $.
Ниже приведены примеры допустимых переменных:
$color
$number
Переменные PHP не требуют специального объявления. Переменная определяется автоматически, после первого её изпользования. Тип переменной определяется автоматически, по типу хрянящейся в ней данных.
Пример:
$s="text";
$n=23;
$s - интерпретируется как строка, $n - как целое число.
Переменные могут объявляться в любой точке программы, однако от расположения объявления завист то, откуда к ней можно обратиться.
Локальные переменные:
Переменная, объявленная внутри функции, считается локальной, т.е. на неё можно ссылать только внутри данной функции. При любом присваении вне функции, используется другая переменная, которя не имеет ничего общего, кроме имени, к переменной обьявленной внутри функции. При выходе из функции, в которой объявлена локальная переменная, эта переменная уничтожается вместе со значением.
Параметры функции:
В PHP, любые параметры, передаваемые функции при вызовеЯ, должны быть объявлены в заголовке функции. Хотя параметрам присваиваются аргументы извне, после выхода из функции они становяться недоступны.
Параметры объявляются в круглых скобках после имени функции. Объявление параметров практически не отличается от объявления типичной переменной.
Пример:
function a($x) {
$x=$x+4;
return $x; }
Глобальные переменные:
Глобальные переменные, в отличие от локальных, доступны в любой точке программы. Но чтобы изменить значение глобальной переменной, необходимо специально объявит её как глобальную. Для этого перед переменной ставиться ключевое слово GLOBAL
Статические переменные:
В отличие от переменных, объявленных параметрами и уничтожающимися при выходе из функции, статическая переменная сохраняет своё значение и при повторном вызове.
Для объявления статической переменной, перед её именем нужно поставить ключевое слово STATIC:
STATIC $x
Что такое массив:
Массив представляет собой список однотипных элементов. Существует два типа массивов, различающихся между собой способом идентификации элементов. В массивах первого типа элемент определяется индексом в последовательности. Массивы втрого типа имеют ассоциативную природу, и для обращения к элементам используются ключи, логически связанные со значениями. По разности массивы делятся на одномерные и многомерные.
Одномерные индексируемые массивы:
При обращении к элементам одномерных индексируемых массивов используется целочисленный индекс, определяющий позицию заданного элемента.
Обобщённый синтаксис элементов одномерного массива:
$имя[индекс]
Одномерные массивы создаются следующим образом:
$instrument[0]="molotok";
$instrument[1]="pila";
$instrument[2]="kusachki";
При выполнении следующей команды:
echo $instrument[2];
Получается:
kusachki
При создании массивов можно использовать функцию array(). Предыдущий масив с помощью этой команды можно создать так:
$instrument=array("molotok","pila","kusachki");
Чтобы добавить элемент в массив, нужно присвоить значение переменной массива без указания индекса, значит масиив можно создать следующим образом:
$instrument[]="molotok";
$instrument[]="pila";
$instrument[]="kusachki";
Одномерные ассоциативные массивы:
Ассоциативные массивы удобны в ситуациях, когда элементы массива удобнее связывать словами а не числами.
Например, нам нужно сохранить в массив сочетания вин и блюд. Надо сохранить в массиве пары "ключ/значение". Присвоим сорт вина названию блюда, используя ассоциативный массив:
$pairings["zinfandel"]="Broild Veal Chops";
$pairings["merlot"]="Baked Ham";
$pairings["sauvignon"]="Prime Rib";
Для того, чтоб вывести элемент массива:
echo $pairings["merlot"];
Результат:
Baked Ham
Ассоциативные массивы можно создавать функцией array():
$pairings=array( zingfandel => "Broiled Veal Chops", merlot => "Baked Ham", sauvignon => "Prime Rib");
Разница толко в способе задания массива, возможности остаются теже.
Многомерные индексируемые массивы:
Многомерные индексируемые массивы работают прктически так же, как и их одномерные прототипы, но элементы определяются несколькими индексами.
Обобщённый синтаксис элементов многомерного массива:
$имя[индекс1][индекс2]...[индексN];
Многомерные ассоциативные массивы:
Многомерный ассоциативный массив можно создать так:
$a["b"]["x"]="text1";
$a["b"]["y"]="text2";
$a["b"]["z"]="text3";
Смешанное индексирование:
В многомерных массивах возможно смешанное индексирование:
$a["b"][1]="text1";
$a["b"][2]="text2";
$a["b"][3]="text3";
Логические величины (истина/лож)
Логический тип данных пиринимает всего дав значения: истинное (true) и ложное (false). Логические выличины Логические переменные задаются двумя способами: при проверке условий и в виде значения переменных.
Сравнения существуют в нескольких формах. Чаще всего они встречаются при использовании оператора == в условной команде if.
Пример:
if ($x == 4) {...}
Результатом проверки является либо истина, либо лож: переменная $x либо равна 4, либо нет.
Логические величины также могут определяться явным присвоением значения переменной.
Пример:
$value=true;
Есть и другой вариант присваения переменной логического значения в виде 1 и 0.
Предыдущий пример может выглядеть так:
$value=1
Стандартные переменные
В PHP поддерживается ряд стандартных переменных, предоставляющих в распоряжение програмиста информацию о внутренней конфигурации. Значения одних переменных задаются PHP. Другие изменяются в зависимости от операционной системы и web-сервера, с которым работает PHP.
Чтобы получить список всех переменных со значениями, достаточно выполнить следующий фрагмент:
While (list($var,$value)=each($GLOBALS))
{
echo "
$var => $value";
}
Поиск элементов относится к числу выжнейших операций с массивами. В PHP существует несколько стандартных функций, позволяющих легко находить в массиве нужные ключи и значения.
in_array()
Функция in_array() проверяет, присутствует ли в массиве заданный элемент. Если присутствует, возвращает значение true, иначе false.
Синтаксис функции:
bool in_array(mexed элемент, array массив)
array_keys()
Эта функция возвращает массив, содержащий все ключи исходного массива, переданного в качестве параметра. Если при вызове задаётся дополнительный параметр "искомый элемент" возвращаются только ключи, которым соответствует заданное значение; в противном случае возвращабтся все ключи массива.
Синтаксис функции:
array array_keys(array массив, [, mixed искомый_элемент])
array_values()
Функция возвращает массив, состоящий из всех значений исходного массива, переданного в качестве параметра.
Синтаксис функции:
array array_values(array массив)
Функции array_keys() и array_values() дополняют друг друга, позволяя при необходимости получить все состовляющие той или иной стороны ассоциативного массива.
Начать следует с изучения синтаксиса php
Спец программа не нужна, можно и в блокноте)
Я пользуюсь PHP Expert Editor
Отличие от блокнота (для меня) только в том, что этот самый синтаксис подсвечивается)
Ну мне как бы большего и не надо. Ссылочку там подправить, или include чего нибудь)
я тупым вопросом, подскажите, с чего начать если я немного знаю HTML, хочу изучить PHP, с чего начать? нужна ли спец программа для программирования?
В инете куча хороших учебников по PHP, кто хочет. тот найдет. Для изучения нужны специальные проги, без них скрипт не запустиш. Вот пакет хороший, все в одном http://www.denwer.ru/
У меня возникла такая проблема: стоял простейший код PHP в страничке на HTML[codebox]<?
include ("footer.tpl");
?>[/codebox]всё работало нормально, но на хостинге изменили настройки и теперь на месте установки кода нечего не отображается.
Подскажите, как решить эту проблему?