автор: Кирил Младенов

Днес, разглеждайки какво ново се е появило по нет-а, случайно попаднах на нещо старо, но бих казал интересно, или по-скоро любопитно. PHP vs CGI- този вече позабравен „език”, който като че ли няма бъдеще, всъщност може да бъде много полезен. Статията е написана от програмиста Кристофър Хенг и прави един сравнителен анализ на двата езика.

PHP в днешни дни изглежда много привлекателен – почти всички хостинг провайтеди го предлагат. За тези, които не са го чували, или пък не са сигурни, какво точно е това, тези статия обяснява PHP и информативно го сравнява с писането на CGI скриптове на Perl.
PHP е безплатен скриптов език. Може да бъде зареден на уеб сървъри като Apache, позволявайки ви да контролирате вашите динамични уеб страници. Най-вероятно ще го изпозлвате в ситуации, в които преди това сте използвали CGI. Например, thefreecountry.com Фийдбек, освен другите неща използва и PHP скрипт, за да генерира форми и да изпраща съобщения.

Езикът

Ако преди сте писал на C, C++, Perl, Java или JavaScript, научаването на PHP ще ви се стори елементарно. Всъщност, вие ще започнете да пишете скирптове почти моментално(както аз направих).
Използват се безтипови променливи, както в Perl, слагайки „$” преди името, те могат да съдържат всякакви типове информация. Например, $whatever може да бъде променлива която съдържа string, int и тн. Ако тази променлива съдържа число, можете да увеличите стойността му с
$whatever++;
Помните Perl, C++, C, Java? Виждате ли за какво говоря?

Вградени библиотеки

За разлика от Perl, който е език за скриптове от общ тип, позволявайки ви да го използвате за много неща(не просто за генериране на страници), PHP е създаден да обслужва уеб страниците. В резултат на това, той има много вградени функции и библиотеки, позволявайки ви да използвате, някой вече написани модули и методи.
Например, ако искате някой друг да ви прати мейл посредством форма, в Perl, може би ще трябва да напишете нещо подобно:

open ( MAIL,”|/usr/sbin/sendmail -t”);
print MAIL “To: myself\@mydomain.com\n” ;
print MAIL “From: visitor\@hisdomain.com\n” ;
print MAIL “Subject: Comments from Web Form\n\n” ;
print MAIL $mainmessage ;
close ( MAIL ) ;

В PHP трябва да напишете само:

mail ( “myself@mydomain.com”, “Comments from Web Form”,
$mainmessage, “From: visitor@hisdomain.com” );

Готино, а? Същото важи и за други неща, като изпращането, или получаването на документ посредством HTTP или FTP. Тъй като PHP е специално разработен за уеб сайтове, нещата, от които се нуждаят дизаинерите са налице.
Друго удобство е контролирането на форми. Вземето за пример следното:

<input type=text name=”dateofbirth”>

Можете веднага да влезете в това поле с $dateofbirth промеливата. Няма нужда от парсване, или нещо подобно. Всички полета в фирмата са автоматично конвертирани в променливите, от които имате нужда.
Връзката с база от данни е много лесна. Има вградени инструменти, за достъп до всички по известни бази данни. Имате нужда от MIME кодиране? Има функция, която прави точно това.
Има още много. Явно не мога да изредя целият лист- ще заеме една книга място, за да го направя.

Генериране на уеб страници

По подразбиране всичко което напишете в PHP документ се предава директно към уеб браузъра. Така че един скрипт би изглеждал така:

<html>
<head><title>My First PHP Script</title></head>
<body>
<h1>My First PHP Script</h1>
<p>
Welcome, Internet user from IP address
<?echo $REMOTE_ADDR?>. Hope you like my first
PHP page.
</body>
</html>

Забележете, че иезглежда по същият начин както обикновенна уеб страница, освен <?…?> частта, която дефинира точното местоположение на PHP скрипта. В този случай, всичко, което искаме от скрипта е да се визуализира IP адреса на посетителя, използваме функцията echo, за да го постигнем. Уеб сървърът има променлива наречена REMOTE_ADDR, която автоматично става достъпна, посредством променлива със същото име.
Има много начини да се използва PHP скрипт на вашата уеб страница. Но вече трябва да сте схванали общата идея. Както казах, PHP е направен за web страници. Това прави писането на такива скриптове, една много лесна и приятна задача.

Къде е уловката?

Докато явно започнах да се забавлявам използвайки PHP , не твърдя, че той е перфектното решение за всички ваши нужди.
Трябва да помислите над своите преоритети.

Не всички хостове предлагат PHP, не са много, но ги има. Всъщност, като изключим безплатните хостинг провайдери, тези които не го поддържат се броят на пръстите на едната ръка. Все пак ако намерите безплатен хостинг с подръжка на PHP, трябва да се замислите дали найстина искате да се доверите на него за вашият сайт. Може да дойде ден, когато ще искате да преместите вашият сайт, може би ви било трудно да намерите друг безплатен хостинг, който да подържа PHP. В краен вариант можете да подкарате вашия компютър като хостинг сървър. Ако обаче, хостингът ви се намира в истинска, “платена” компания, може би ще имате по-малко проблеми.

Както всички скриптови езици, дебъгването на скрипта може да бъде адски болезнено, освен ако не си дръпнете и инсталирате свое собствено копие на PHP. С други думи, можете да загубите много часове, опитавайки се да тествате и дебъгнете вашето приложение.

PHP не е език, който може всичко. Има много библиотеки, които поддържат уеб програмирането, няма нищо което спомага за разработването на десктоп приложения. Аз лично намирам PHP за перфектният избор за уеб разработка.

Няма подобни статии