Удомельский форум   ◊
www.udomlya.ru | Медиа-Центр | Удомля КТВ | Старый форум

Вернуться   Удомельский форум > Hard&Soft > Программирование > PHP
Справка Пользователи Календарь Сообщения за день
 
 
Опции темы Опции просмотра
Старый 02.11.2006, 22:54   #1
Ruble
Местный
 
Аватар для Ruble
 
Регистрация: 26.04.2006
Сообщений: 462
Вы сказали Спасибо: 57
Поблагодарили 52 раз(а) в 23 сообщениях
Отправить сообщение для Ruble с помощью ICQ
По умолчанию Внимательно смотрим и учимся

перенесено от сюда http://second.udomlya.ru/uf/showpost...2&postcount=12


PHP (произносится пи-эйч-пи___769;) — скриптовый язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных. В настоящее время поддерживается подавляющим большинством предоставителей хостинга. Входит в LAMP — «стандартный» набор для создания вебсайтов (Linux, Apache, Mysql, PHP (Python или Perl)).

В области программирования для Сети PHP — один из популярнейших скриптовых языков (наряду с JSP, PERL и языками, используемыми в ASP) благодаря своей простоте, скорости выполнения, богатой функциональности и распространению исходных кодов на основе лицензии PHP. PHP особенен наличием ядра и подключаемых модулей, «расширений»: для работы с базами данных, сокетами, динамической графикой, криптографическими библиотеками, документами формата PDF и т. п. Любой желающий может разработать своё собственное расширение и подключить его. Существуют сотни расширений, однако в стандартную поставку входит лишь несколько десятков хорошо зарекомендовавших себя. Интерпретатор PHP подключается к веб-серверу либо через модуль, созданный специально для этого сервера (например, для Apache или IIS), либо в качестве CGI-приложения.

Кроме этого, он может использоваться для решения административных задач в операционных системах UNIX, Linux, Windows и Mac OS X. Однако в таком качестве он не получил распространение, отдавая пальму первенства Perl, Python и VBScript.

Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl.

Ныне PHP используется сотнями тысяч разработчиков. Несколько миллионов сайтов сообщают о работе с PHP, что составляет более пятой доли доменов Интернета.

Группа разработчиков PHP состоит из множества людей, добровольно работающих над ядром и расширениями PHP, и смежными проектами, такими, как PEAR или документация языка.

Название PHP — рекурсивная аббревиатура, означающая «PHP: Hypertext Preprocessor» (ранее акроним расшифровывался как «Personal Home Page Tools»). Изначально PHP создавался в качестве надстройки над Perl для облегчения разработки веб-страниц.

PHP/FI

В 1994 году датский программист (ныне живущий в Канаде) Расмус Лердорф (Rasmus Lerdorf) написал набор скриптов на Perl/CGI для вывода и учёта посетителей его онлайн-резюме, обрабатывающий шаблоны HTML-документов. Лердорф назвал набор Personal Home Page (Личная Домашняя Страница). Вскоре функциональности и быстроты Perl — интерпретатора скриптов перестало хватать, и Лердорф написал на языке C новый интерпретатор шаблонов PHP/FI (англ. Personal Home Page / Forms Interpreter — «Личная Домашняя Страница / Интерпретатор форм». PHP/FI включал базовую функциональность сегодняшнего PHP: оформление переменных в стиле Perl ($имя_переменной для вывода значения), автоматическую обработку форм и встраиваемость в HTML-текст и многое другое. Новорожденный язык отличался от своего прародителя более простым и ограниченным синтаксисом.

В 1997 году после длительного бета-тестирования вышла вторая версия обработчика, написанного на C — PHP/FI 2.0. Её использовали около 1 %(приблизительно 50 тысяч) всех интернет-доменов мира.


PHP 3

PHP 3.0 была первой версией, напоминающей PHP, каким мы знаем его сегодня. В 1997 году два израильских программиста Энди Гутманс (Andi Gutmans) и Зев Сураски (Zeev Suraski), два разработчика из израильского института технологий (Technion), переписали код с нуля: разработчики сочли PHP/FI 2.0 непригодным для разработки приложения электронной коммерции, над которым они работали для проекта Университета расположенного в Хайфе, Израиль. Для совместной работы над PHP 3.0 с помощью базы разработчиков PHP/FI 2.0 Энди, Расмус и Зев решили объединиться и объявить PHP 3.0 официальным преемником PHP/FI, разработка же PHP/FI была практически полностью прекращена.

Одной из сильнейших сторон PHP 3.0 была возможность расширения ядра. Впоследствии интерфейс написания расширений привлёк к PHP множество сторонних разработчиков, работающих над своими модулями, что дало PHP возможность работать с огромным количеством баз данных, протоколов, поддерживать большое число API. Фактически, это и был главный ключ к успеху, но стоит добавить, что немаловажным шагом оказалась разработка нового, намного более мощного и полного синтаксиса с поддержкой ООП.

Абсолютно новый язык программирования получил новое имя. Разработчики отказались от дополнения о персональном использовании, которое имелось в аббревиатуре PHP/FI. Язык был назван просто PHP — аббревиатура, содержащая рекурсивный акроним (англ. PHP: Hypertext Preprocessor — «PHP: Препроцессор Гипертекста»).

К концу 1998 года PHP использовался десятками тысяч пользователей. Сотни тысяч веб-сайтов сообщали о том, что они работают с использованием этого языка. В то время PHP 3.0 был установлен приблизительно на 10 % веб-серверов Интернета.

PHP 3.0 был официально выпущен в июне 1998 года после 9 месяцев публичного тестирования.

PHP 4

К зиме 1998 года, практически сразу после официального выхода PHP 3.0, Энди Гутманс и Зев Сураски начали переработку ядра PHP. В задачи входило увеличение производительности сложных приложений и улучшение модульности базиса кода PHP. Расширения дали PHP 3.0 возможность успешно работать с набором баз данных и поддерживать большое количество различных API и протоколов, но PHP 3.0 не имел качественной поддержки модулей и приложения работали неэффективно.

Новый движок, названный Zend Engine (от имён создателей, Зева и Энди, также основателей Zend Technologies), успешно справлялся с поставленными задачами и впервые был представлен в середине 1999 года. PHP 4.0, основанный на этом движке и принёсший с собой набор дополнительных функций, официально вышел в мае 2000 года, почти через два года после выхода своего предшественника PHP 3.0. В дополнение к улучшению производительности, PHP 4.0 имел ещё несколько ключевых нововведений, таких как поддержка сессий, буферизация вывода, более безопасные способы обработки вводимой пользователем информации и несколько новых языковых конструкций.


PHP 5

Пятая версия PHP была выпущена разработчиками 13 июля 2004 года. Изменения включают обновление ядра Zend (Zend Engine 2), что существенно увеличило эффективность интерпретатора. Введена поддержка языка разметки XML. Полностью переработаны функции ООП, которые стали во многом схожи с моделью, используемой в Java. В частности, введён деструктор, открытые, закрытые и защищённые члены и методы, окончательные члены и методы, интерфейсы и клонирование объектов. Нововведения, однако, были сделаны с расчётом сохранить наибольшую совместимость с кодом на предыдущих версиях языка. На данный момент самыми стабильными и часто используемыми являются именно версии 5.xx, даже несмотря на то, что уже имеется dev-версия PHP 6.

PHP 6

Шестая версия PHP находится на начальной стадии разработки. В ней уже сделано[1] множество нововедений, как, например, исключение из ядра POSIX-регулярных выражений и «длинных» суперглобальных массивов, удаление safe_mode, php_magic_quotes и register_globals. Также много внимания уделено поддержке Юникода.[2]. Получить текущую версию разрабатываемого кода для Linux/BSD и скомпилированные версии для Windows можно на PHP Snapshots.

http://ru.wikipedia.org/wiki/PHP
Ruble вне форума  
Старый 03.11.2006, 16:58   #2
Neo
Местный
 
Аватар для Neo
 
Регистрация: 27.04.2006
Адрес: Ucity
Сообщений: 730
Вы сказали Спасибо: 102
Поблагодарили 118 раз(а) в 43 сообщениях
По умолчанию Базовый Синтаксис

Базовый Синтаксис

Синтаксис PHP заимствован непосредствено из C. Java и Perl также повлияли на синтаксис данного языка.

Переход из HTML
1. <?
echo("простейший способ");
?>

2. <?php
echo("при работе с XML документами делайте так\n");
?>

3. <script language="php">
echo ("некоторые редакторы (подобные FrontPage) не
любят обрабатывающие инструкции");
</script>;

4. <% echo("От PHP 3.0.4 можно факультативно применять ASP-тэги"); %>

Операторы разделяются также как в C или Perl - точкой с запятой.

Если оператор в скрипте последний или единственный, стоящий перед "?>", то точку с запятой ставить необязательно.

Следующие записи эквивалентны:
<php
echo "Это тест";
?>

<php echo "Это тест" ?>

Типы переменных
integer - целое
double - число с дробной частью
string - строковая переменная
array - массив
object - объектная переменная
pdfdoc - PDF-документ (только при наличии поддержки PDF)
pdfinfo - PDF-инфо (только при наличии поддержки PDF)
Тип переменной обычно не устанавливается программистом; вместо этого, он определяется PHP во время выполнения программы, в зависимости от контекста в котором данная переменная используется.

Если вам нравится указывать тип переменной непосредственно, вы можете использовать для этого инструкцию cast либо функцию settype().

Учтите, что переменная может вести себя по разному в определенных ситуациях, в зависимости от того, какой тип определен для нее в данное время. Более подробно это описано в разделе Изменение типа.

Инициализация переменной
Для инициализации переменной в PHP вы просто присваиваите ей значение. Общий вид переменной выглядит так:

$bar = 'foo';

Обратите внимание на знак доллара ($). Он то и означает, что данный оператор является переменной. Переменные могут содержать любые латински буквы и цифры или знак подчеркивания "_", однако первый символ переменной быть цифрой не может. Переменные так же чувствительны к регистру, к примеру две переменные $a и $A будут абсолютно разные.
Примеры правильных переменных:

$bar = 'foo';
$_bar = 'foo';
$PeRReMenNayA = "foo";

примеры неправильных переменных:
bar = 'foo';
$ bar = 'foo';
$45 = foo;

Изменяемые переменные
Иногда бывает удобно давать переменным изменяемые имена. Такие имена могут изменяться динамически. Обычная переменая устанавливается так:

$a = "hello";

Изменяемая переменная берет некое значение и обрабатывает его как имя переменной. В приведенном выше примере значение hello может быть использовано как имя переменной, посредством применения двух записанных подряд знаков доллара, т.е.:

$$a = "world";

С этой точки зрения, две переменных определены и сохранены в символьном дереве PHP: $a с содержимым "hello" и $hello с содержимым "world". Так, инструкция:

echo "$a ${$a}";

осуществляет то же самое, что и инструкция:

echo "$a $hello";

а именно, обе они выводят: hello world.


Объединение в блоки (группы)

Некоторые операторы могу быть объедененны в группы, делается ето для того, чтобы определенной функции задать или ограничить область ее действия. Для етого используется открывающийся и закрывающийся символ "{" и "}" соответсвенно.

Пример использования функции if:

if ($bar == 'foo')
{
сдесь могут находиться любые операторы и функции, которые будут выполнены, если переменной $bar присвоено значение foo
}

Выше был приведен только основной (базовый) синтаксис, все остальное будет опубликовываться по мере освоения php

Последний раз редактировалось Neo; 03.11.2006 в 17:04.
Neo вне форума  
Старый 04.11.2006, 23:19   #3
Ruble
Местный
 
Аватар для Ruble
 
Регистрация: 26.04.2006
Сообщений: 462
Вы сказали Спасибо: 57
Поблагодарили 52 раз(а) в 23 сообщениях
Отправить сообщение для Ruble с помощью ICQ
По умолчанию Технология CGI

Технология CGI

Технология CGI (Common Gateway Interface) подразумевает использование в составе ресурса Интернет интерактивных элементов на базе приложений, обеспечивающих передачу потока данных от объекта к объекту. Именно так организовано во Всемирной сети большинство чатов, конференций, досок объявлений, гостевых книг, поисковых машин и систем подсчета рейтинга. В общем случае принцип работы CGI выглядит следующим образом: пользователь заполняет на web-страничке ту или иную форму и нажимает на кнопку, после чего встроенная в код HTML строка вызова CGI-скрипта запускает соответствующую программу CGI и передает ей управление процессом обработки информации. Введенные пользователем данные отсылаются этой программе, а она, в свою очередь, встраивает их в другую страницу, отправляет по почте или трансформирует каким-либо иным способом.

Отправить данные на сервер можно двумя способами POST и GET.
Метод GET отличается от метода POST тем, что данные передаваемые на сервер присоединаются в конец URL (URL - это то что вы вводите в броузере), например http://www.udomlya.ru/~ruble/_/?show=13, в выделении первый символ "?" - с этого символа начинается GET данные, в общем виде они выглядят так :имя переменной=значение&имя переменной2=значение&имя переменной3=значение& и т.д.
Метод POST передаёт данные в HTTP заголовках.
Ruble вне форума  
Старый 04.11.2006, 23:47   #4
Ruble
Местный
 
Аватар для Ruble
 
Регистрация: 26.04.2006
Сообщений: 462
Вы сказали Спасибо: 57
Поблагодарили 52 раз(а) в 23 сообщениях
Отправить сообщение для Ruble с помощью ICQ
По умолчанию

Пример передачи данных на сервер:
PHP код:
<?PHP
$get
"";
$post="";
if(isset(
$_POST___91;'go'___93;))
   
$post='Методом POST передано: " '.$_POST___91;'text'___93;.' "';
else if(isset(
$_GET___91;'go'___93;)) $get='Методом GET передано: " '.$_GET___91;'text'___93;.' "';
?>
<HTML>
<HEAD>
<TITLE>Урок 1. Передача данных на сервер.</TITLE>
</HEAD>
<BODY>
Передача данных на сервер методом GET<BR>
 <FORM method="GET" action="<?=$_SERVER___91;'PHP_SELF'___93;?>">
   <INPUT type="text" name="text">
   <INPUT type="submit" value="GET" name='go'><br>
   <?=$get?>
 </FORM>
 <br><br>
Передача данных на сервер методом POST<BR>
 <FORM method="POST" action="<?=$_SERVER___91;'PHP_SELF'___93;?>">
   <INPUT type="text" name="text">
   <INPUT type="submit" value="POST" name='go'><br>
   <?=$post?>
 </FORM>
</BODY>
</HTML>
Пример онлайн
Ruble вне форума  
Старый 05.11.2006, 00:53   #5
Neo
Местный
 
Аватар для Neo
 
Регистрация: 27.04.2006
Адрес: Ucity
Сообщений: 730
Вы сказали Спасибо: 102
Поблагодарили 118 раз(а) в 43 сообщениях
По умолчанию

Хочу добавить, для тех кто может быть что-то не совсем хорошо понял
PHP код:
<FORM method="GET" action="<?=$_SERVER___91;'PHP_SELF'___93;?>">
method указывает способ передачи, GET или POST. action - страница, на которую будет отправлена форма с данными, переменная $_SERVER['PHP_SELF'] является переменной, которая существует всегда, независимо от того задавали ли вы ее или нет, и значение етой переменной является название текущей страницы, т.е. данные будут отправляться на ету же страницу.

Получить данные, можно с помощью переменных, которые создаются автоматически, при отправке формы, ети переменные $_POST и $_GET, в зависимости от используемого способа передачи. Из вышеприведенного примера, создаются переменные $_POST['text'] и $_GET['text'], индекс, который указывается в квадратных скобках и в кавычках берется отсюда:
Код:
<INPUT type="text" name="text">
Значениями переменных $_POST['text'] и $_GET['text'] будет являться то, что пользователь ввел в нашу форму.

При использовании метода GET, необязательно использовании формы, можно, допустим, сделать ссылку
Код:
<a href="index.php?name=value&name2=value2">ссылка</a>
и при переходе к такой ссылке, будут созданы две переменные: $_GET['name'] со значением value и $_GET['name2'] со значением value2
Neo вне форума  
Старый 05.11.2006, 22:22   #6
Neo
Местный
 
Аватар для Neo
 
Регистрация: 27.04.2006
Адрес: Ucity
Сообщений: 730
Вы сказали Спасибо: 102
Поблагодарили 118 раз(а) в 43 сообщениях
По умолчанию

народ, вы пробуйте, одной теории мало, если есть вопросы - задавайте
Neo вне форума  
Старый 06.11.2006, 09:40   #7
Ruble
Местный
 
Аватар для Ruble
 
Регистрация: 26.04.2006
Сообщений: 462
Вы сказали Спасибо: 57
Поблагодарили 52 раз(а) в 23 сообщениях
Отправить сообщение для Ruble с помощью ICQ
По умолчанию

вылажена последня версия официальной документации по PHP на русском

многие просят её себе в руки так что можно взять тут или тут если повезёт.
весит 3мб.

Последний раз редактировалось Ruble; 07.11.2006 в 20:28.
Ruble вне форума  
Старый 19.11.2006, 23:29   #8
Ruble
Местный
 
Аватар для Ruble
 
Регистрация: 26.04.2006
Сообщений: 462
Вы сказали Спасибо: 57
Поблагодарили 52 раз(а) в 23 сообщениях
Отправить сообщение для Ruble с помощью ICQ
По умолчанию

Цитата:
Сообщение от Ruble
Пример передачи данных на сервер:
PHP код:
<?PHP
$get
"";
$post="";
if(isset(
$_POST___91;'go'___93;))
   
$post='Методом POST передано: " '.$_POST___91;'text'___93;.' "';
else if(isset(
$_GET___91;'go'___93;)) $get='Методом GET передано: " '.$_GET___91;'text'___93;.' "';
?>
<HTML>
<HEAD>
<TITLE>Урок 1. Передача данных на сервер.</TITLE>
</HEAD>
<BODY>
Передача данных на сервер методом GET<BR>
 <FORM method="GET" action="<?=$_SERVER___91;'PHP_SELF'___93;?>">
   <INPUT type="text" name="text">
   <INPUT type="submit" value="GET" name='go'><br>
   <?=$get?>
 </FORM>
 <br><br>
Передача данных на сервер методом POST<BR>
 <FORM method="POST" action="<?=$_SERVER___91;'PHP_SELF'___93;?>">
   <INPUT type="text" name="text">
   <INPUT type="submit" value="POST" name='go'><br>
   <?=$post?>
 </FORM>
</BODY>
</HTML>
Пример онлайн
кто нибудь попробовал?
может кто нибудь что нибудь покажет, спросит, а?
Ruble вне форума  
Старый 20.11.2006, 22:11   #9
Neo
Местный
 
Аватар для Neo
 
Регистрация: 27.04.2006
Адрес: Ucity
Сообщений: 730
Вы сказали Спасибо: 102
Поблагодарили 118 раз(а) в 43 сообщениях
По умолчанию

Цитата:
Сообщение от Ruble
кто нибудь попробовал?
может кто нибудь что нибудь покажет, спросит, а?
не, пхп явно никому не нужен, это из серии: "лучше один раз ответить, чем сто раз подумать"
з.ы. кто не понял, то я имел ввиду тех, кто ответил "нужны", на опрос "Нужны ли нам уроки php".
Neo вне форума  
Старый 22.11.2006, 13:21   #10
su.ma
Местный
 
Аватар для su.ma
 
Регистрация: 28.05.2006
Адрес: * * *
Сообщений: 121
Вы сказали Спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
По умолчанию

http://www.udomlya.ru/~derill/proba/

и для чего это?
__________________
Drift SpeeD Driver 69 Drag Dalns Army Boy
mito & velocit'a We Control!!!
su.ma вне форума  
 


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 10:27. Часовой пояс GMT +3.


Для улучшения работы сайта и его взаимодействия с пользователями мы используем файлы cookie. Продолжая работу с сайтом, Вы разрешаете использование cookie-файлов. Вы всегда можете отключить файлы cookie в настройках Вашего браузера.
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot