2. съдържание
историята на PHP;
основните концепции;
цели на програмирането с PHP;
някои предимства;
недостатъци;
и особености на PHP.
11 декември 2014 2
3. основни въпроси
Основни свойства на PHP.
Синтаксис;
Особености на PHP –
предимства и недостатъци.
11 декември 2014 3
4. 1.Основни свойства на
PHP. Синтаксис
1994 година Размус Лердорф - скриптов език,
“Personal Home Page Tools”;
за създаване на интерактивни и динамични web
сайтове;
гъвкав, компактен, лесен за изучаване и използване,
предлагащ всички възможности за създаване на
динамичен, съвременен сайт.
По късно - “Hypertext Preprocessor”;
но основната идея - простотата на използване е
запазена;
може би???-- най-лесния език за изучаване и
прилагане.
11 декември 2014 4
5. 1.Основни свойства на
PHP. Синтаксис
<?php
echo "Здравейте";
?>
програмните езици:
скриптови;
и компилируеми;
client side(JS) и server
side (PHP).
11 декември 2014 5
6. 2.Особености на PHP –
предимства и недостатъци
Предимства:
гъвкавост при включване в HTML документи;
най-голяма е близостта със C (смесица от Perl, Java и
C );
удобни възможности за изпълняване на сложни
математически изчисления;
изпълняване на мрежови функции;
възможностти за обработка на електронна поща;
работа с обикновени изрази и други.
най-голямата сила на PHP е във възможностите
му за работа с бази данни
MySQL, PostgreSQL, Oracle, Sybase, mSQL и други.
11 декември 2014 6
7. Първият скрипт ../uroci/t1/ex2.php
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type"
CONTENT="text/html; charset=UTF-8">
<TITLE>Здравейте!</TITLE>
</HEAD>
<BODY>
Първият ми PHP скрипт<br>
<?php
echo ('<h2>Здравей, Свят и мили Хора!
</h2>');
11 декември 2014 7
?>
</BODY>
</HTML>
запишете този файл (като
ex2.php);
Сложете го на сървър,
поддържащ PHP;
Извикайте го в браузъра
си.
Резултатът е –
поздравлението.
8. ???!!!
Примерът демонстрира как може да се вгради
скриптовия код в HTML.
PHP кодът се поставя между <?php ….. и ?>;
Така сървърът разбира, че трябва да подаде това
съдържание на интерпретатора за PHP;
друг вариант - <? ...?>.
всяка инструкция трябва да завършва с точка и запетая;
за да изпишете текст на екрана - вградените функции
echo или print;
изразите в PHP се ограждат с единични - ‘’ или
двойни - “” кавички.
11 декември 2014 8
9. ..обратната задача
../uroci/t1/ex3.php
всичко, което подадем като аргумент на echo ще бъде изведено на екрана
(вграждане на HTML):
<?php
echo "<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
<TITLE>Здравей, свят!</TITLE>
</HEAD>
<BODY>
Първият ми PHP скрипт<br><br>
<b>Здравей, Свят и мили ХОРА!</b>
</BODY>
</HTML>";
?>
Резултатът от този код ще бъде абсолютно същия.
11 декември 2014 9
10. ???!!!
Обратната наклонена черта;
="Content-Type" CONTENT="text/html; charset=UTF-8“;
Два начина на запис;
echo ("<b>Здравей, свят!</b>");
echo ('<b>Здравей, свят!</b>');
Parse error:
echo ("<b>Този скрипт се казва "Здравей, свят!"</b>")
Без “Parse error” - обратната наклонена черта;
echo ("<b>Този скрипт се казва "Здравей, свят!"</b>");
Обратно наклонената черта - може да послужи и за
вкарване на нов ред (n ), на табулация (t) и др.
Коментари;
За ред ---- //
За Блок ---- /*......*/
11 декември 2014 10
11. Коментари
../uroci/t1/ex4.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta name="generator" content="PSPad editor, www.pspad.com">
<title>ДАТА</title>
</head>
<body>
<?php
/* Този скрипт ще изпише на екрана коя е датата днес.
Затова ще използваме функцията date(), за да я разберем.*/
$today = date("Y-m-d");
//А сега ще изпишем датата.
echo "<CENTER><h1>Днес е: $today.<h1></CENTER>";
//И това е всичко.
?>
</body>
</html>
11 декември 2014 11
12. Усложняване на
примера
../uroci/t1/ex5.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta name="generator" content="PSPad editor, www.pspad.com">
<title>WWW</title>
</head>
<BODY>
<?php
$data=date("d-m-Y");
$chas=date("H:i:s");
$browser=getenv('HTTP_USER_AGENT');
$ref=getenv('REMOTE_ADDR');
echo ("<b>Здравейте,<br><br>Добре дошли в моя сайт!</b><br>");
echo ("Сега е $chas часа, по моя часовник на $data, а Вие дойдохте тук от $ref с
$browser");
?>
</BODY>
<HTML>
11 декември 2014 12
13. Като обобщение
Предимства на PHP:
PHP работи на множество операционни системи (Unix, Linux, Windows, BSD, Mac
OS X) и множество уеб сървъри - Apache, lighttpd, IIS
PHP е лесен за разработване
PHP е безплатен и се разпространява под лиценза на BSD
PHP може да бъде лесно модифициран и адаптиран към нуждите на
прилагащата го организация
PHP е създаден и пригоден за разработката на уеб приложения
PHP не изисква особени умения от разработчици работили на структурни езици -
езикът е с прост и интуитивен синтаксис за такива разработчици
PHP е широко разпространен поради простотата си, което води до по-евтино
платен персонал във фирмите, по ниска цена на приложенията за клиентите и
още по-голяма използваемост. Поддръжката за PHP разработчици е
гарантирана от множеството форуми и приложения на общността.
По аналогия с Perl към стандартните класове на PHP могат да бъдат писани и
много допълнителни модули
PHP поддрържа следните системи за управление на бази от данни: IBM DB2 -
formix - Ingres, Microsoft SQL Server (MS SQL), mSQL, MySQL, Oracle, PostgreSQL,
Sybase
PHP поддържа и ODBC
11 декември 2014 13
14. Като обобщение
Недостатъци на PHP:
В по-старите версии на езика по подразбиране съществува функционалност,
чрез която крайните потребители могат да подават направо променливи към
PHP скрипта (register_globals). Настройката по подразбиране е премахната от
версия 4.2.0, но съществуват все още много стари приложения, които
предполагат употребата на тази функция.
PHP не поддържа напълно Unicode. Пълната поддръжка се предвижда в PHP 6.
PHP не поддържа именни пространства - т.е. всички функции се намират в едно
именно пространство.
Съществуват много функции на библиотеки с идентична функционалност.
Няма изградена конвенция за именуване и подреждане на аргументите на
вградените функции в PHP, което прави необходимо постоянно консултиране с
документация при работа с PHP.
PHP няма вградена поддръжка на нишки (threads), което прави обработката на
големи масиви от данни много трудна: страницата не се зарежда преди целият
масив от данни да е преработен и ако потребителят прекъсне зареждането й (и
уеб сървърът разрешава прекъсване на заявката), прекъсва и обработката на
данните.
Обръщенията към неинициализирани променливи и елементи на масив са
разрешени в PHP, което прави възможно допускането на трудни за откриване
правописни грешки.
11 декември 2014 14
15. Като допълнение – малко HTML
http://www.w3schools.com/tags/default.asp ----tags
HTML Forms – Basic Tags
<form action="demo_form.asp" method="post/get"> <input type="text"
name="email" size="40" maxlength="50">
<input type="password">
<input type="checkbox" checked="checked">
<input type="radio" checked="checked">
<input type="submit" value="Send">
<input type="reset">
<input type="hidden">
<select>
<option>Apples</option>
<option selected="selected">Bananas</option>
<option>Cherries</option>
</select>
<textarea name="comment" rows="60" cols="20"></textarea>
</form>
11 декември 2014 15
16. Като допълнение – малко HTML(2)
HTML Basic Document
<!DOCTYPE html>
<html>
<head>
<title>Title of document goes
here</title>
</head>
<body>
Visible text goes here...
</body> </html>
Basic Tags
<h1>Largest Heading</h1>
<h2> . . . </h2>
<h3> . . . </h3>
<h4> . . . </h4>
<h5> . . . </h5>
<h6>Smallest Heading</h6>
<p>This is a paragraph.</p>
<br> (line break)
<hr> (horizontal rule)
<!-- This is a comment -->
11 декември 2014 16
17. Като допълнение – малко HTML(3)
Formatting
<b>Bold text</b>
<code>Computer code</code>
<em>Emphasized text</em>
<i>Italic text</i>
<kbd>Keyboard input</kbd>
<pre>Preformatted text</pre>
<small>Smaller text</small>
<strong>Important text</strong>
<abbr> (abbreviation)
<address> (contact information)
<bdo> (text direction)
<blockquote> (a section quoted from
another source)
<cite> (title of a work)
<del> (deleted text)
<ins> (inserted text)
<sub> (subscripted text)
<sup> (superscripted text)
Styles/Sections
<style type="text/css">
h1 {color:red;}
p {color:blue;}
</style>
<div>A block-level section in a
document</div>
<span>An inline section in a
document</span>
11 декември 2014 17
18. Като допълнение – малко HTML(4)
Links
Ordinary link: <a href="http://www.example.com/">Link-text goes
here</a>
Image-link: <a href="http://www.example.com/"><img src="URL"
alt="Alternate Text"></a>
Mailto link: <a href="mailto:webmaster@example.com">Send e-mail</
a>
Bookmark:
<a id="tips">Tips Section</a>
<a href="#tips">Jump to the Tips Section</a>
Images
<img src="URL" alt="Alternate Text" height="42" width="42">
11 декември 2014 18
19. Като допълнение – малко HTML(5)
Unordered list
<ul>
<li>Item</li>
<li>Item</li>
</ul>
Ordered list
<ol>
<li>First item</li>
<li>Second item</li>
</ol>
Definition list
<dl>
<dt>Item 1</dt>
<dd>Describe item 1</dd>
<dt>Item 2</dt>
<dd>Describe item 2</dd>
</dl>
Tables
<table border="1">
<tr>
<th>table header</th>
<th>table header</th>
</tr>
<tr>
<td>table data</td>
<td>table data</td>
</tr>
</table>
11 декември 2014 19
20. Литература
Official website -- http://www.php.net/;
PHP at the Open Directory Project --
http://www.dmoz.org/Computers/Programming/Languages/PHP/
;
PHP Reference Manual --
http://www.php.net/manual/en/index.php;
PHP CLI (Command Line Interface) web site -- http://www.php-cli.
com/;
PHP Tutorial -- http://phpforms.net/tutorial/tutorial.html;
PHP overview --
http://www.macosnext.com/component/content/article/2320.html
;
11 декември 2014 20