Просто рабочий конспект
PHP - серверно-ориентированный язык. Код выполняется на стороне сервера.
Простой пример:
<?php
echo "Simple text"; ?>
Переменные:
$var1 = 1;
$testvariable = 'Three'; $testvariable = 'Hi ' . 'there!'; // конкатенация $var1 = 'PHP'; // Assigns a value of 'PHP' to $var1
Интерполяция. В одинарных кавычках значение переменной НЕ подставляется.
echo "$var1 rules!"; // выводит 'PHP rules!' echo '$var1 rules!'; // выводит '$var1 rules!'
Массив:
$myarray = array('one', 2, '3');
echo $myarray[0]; // Outputs 'one'
echo $myarray[1]; // Outputs '2'
echo $myarray[2]; // Outputs '3'
Добавление элемента:
$myarray[] = 'the fifth element';
echo $myarray[4]; // Outputs 'the fifth element'
Ассоциативный массив:
$birthdays['Kevin'] = '1978-04-12'; $birthdays['Stephanie'] = '1980-05-16'; $birthdays['David'] = '1983-09-09';
Или через функцию:
$birthdays = array('Kevin' => '1978-04-12', 'Stephanie' => '1980-05-16', 'David' => '1983-09-09');
echo 'My birthday is: ' . $birthdays['Kevin'];
PHP используется для генерации динамического контента html-страниц.
Код PHP активируется , когда запрос посылается к серверу.
Ключом в создании интерактивности на PHP является понимание того, как можно вместе с запросом к серверу на генерацию новой страницы отправить информацию о том, что сделал юзер на странице.
Самый простой способ передачи параметров серверу - это в строке URL:
В тексте html- странички пишем:
<a href="welcome1.php?name=Max&lastname=Petrovich">Hi, I’m Max!</a>
Вот что в файле на сервере welcome1.php:
<?php
$name = $_GET['name'];
$lastname = $_GET['lastname']; echo 'Welcome to our web site, ' . $name . $lastname '!'; ?>
Ответ сервера замещает весь контент страницы. Т.е., сервер возвращает новую страницу.
PHP автоматически создаёт массив $_GET[], при получении запроса от браузера.
Однако, здесь налицо дыра в безопасности! В тексте параметра можно передать коды html и сервер обработает их. Например:
welcome1.php?name=<a href='http://localhost'>Newlink</a> Всё, что угодно...
Дыра закрывается функцией htmlspecialchars($name, ENT_QUOTES, 'UTF-8')
Html-теги преобразуются в специальные символы. (< > ....)
Другой способ передачи параметров php - скрипту - с помощью метода POST через форму:
<form action="welcome5.php" method="post">
<div><label for="firstname">First name:
<input type="text" name="firstname" id="firstname"/></label>
</div>
<div><label for="lastname">Last name:
<input type="text" name="lastname" id="lastname"/></label></div>
<div><input type="submit" value="GO"/></div>
</form>
Скрипт сервера:
<?php
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
echo 'Welcome to our web site, ' .
htmlspecialchars($firstname, ENT_QUOTES, 'UTF-8') . ' ' .
htmlspecialchars($lastname, ENT_QUOTES, 'UTF-8') . '!';
?>
Вместо массивов $_GET[] или $_POST[] можно использовать $_REQUEST[]. Тогда на сервере можно не задумываться, каким методом передаются параметры.
Управляющие структуры.
if(condition){...}else{...}
while (condition) {...}
for (declare counter; condition; increment counter) {...}
Один контроллер - несколько шаблонов.
Примерная схема построения :
контроллер - в модуле index.php
В контроллере выполняется обработка условий, при которых генерится разный контент, возвращаемый браузеру.
С помощью include подключаются разные фрагменты php-кода.Подпишись на новости PHP по e-mail |