Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
KiadtaLilla Jónásné Megváltozta több, mint 10 éve
1
Bevezetés a PHP világába Hojtsy Gábor goba@php.net Első Magyarországi PHP Konferencia 2003. március 29. Copyright PHP Konferencia, 2003, Hojtsy Gábor
2
Tartalomjegyzék A PHP története, mellékágak Főbb jellemzők Konkurens technológiák, nyelvek Szavazásra lehetőséget adó példák Magyar és angol nyelvű PHP források Előretekintés
3
A PHP története, mellékágak
4
A PHP születése 1994: Rasmus Lerdorf személyes oldala számára Perl programgyűjteményt készít PHP jelentése ekkor: Personal Home Page Tools A FI (Form Interpreter) nevű eszközzel egyesítve jött létre a PHP/FI 1997: A PHP/FI 2.0 egy teljesen új változat, már ötvenezer webhelyen telepítve
5
Újjászületés - PHP 3 1997: Zeev Zuraski és Andi Gutmans alapjaiban újraírja a PHP-t, és szövetkezve Rasmus-szal megjelenik a PHP 3.0 Új jelentése: PHP: Hypertext Preprocessor Több százezer webhelyen telepítve Objektum orientált nyelvi elemek, kiterjeszthetőség Óriási mértékű ingyenes forráskód, PHP- ben írt alkalmazások terjedése a világhálón
6
PHP 4 - a Zend Engine 1999: Zeev Zuraski és Andi Gutmans ismét újraírja a PHP alapjait, most már egy 'külső' motorban Zend Engine néven 2003 februárjában több mint tíz és félmillió webhelyen telepítve Biztonságosabb adatkezelés, többféle webszerver támogatása, korrekt parancssori használat Professzionális PHP kódok kereskedelme, ingyenes elérhetősége
7
Zend Technologies A PHP mögött álló első számú cég, a PHP alapjainak készítői indították Az értelmezőt támogató kereskedelmi termékeket fejlesztenek, terméktámogatással Honlapjukon található referenciák egyértelművé teszik a PHP egyre szélesedő elfogadottságát a magasabb üzleti szektorban A PHP továbbra is ingyenes termék, minden feladatra elérhetőek költségektől mentes megoldások
8
Egységes osztálykönyvtár - PEAR 2000: Stig Bakken elindítja a PHP-t kiegészítő kódokat rendszerező PEAR-t PEAR: PHP Extensions and Application Repository. Részei a PFC (PHP Foundation Classes) és a PECL (PHP Extension Code Library) Mára egy komplett, telepítővel is rendelkező objektumorientált eszközkészlet A jövőben sokkal több szerepet kap
9
Grafikus felületek - PHP-GTK 2001: Andrei Zmievski és Frank Kromann a létező GTK implementációk alapján elkészíti a PHP grafikus felületeket kezelő kiterjesztését Újrahasznosítható korábban megírt PHP kód kliens oldali alkalmazások írására is A PHP továbbra is a webfejlesztés területére fókuszál a fejlesztők döntése szerint
10
Főbb jellemzők
11
A PHP tulajdonságai Web alkalmazás fejlesztés orientált szkriptnyelv, HTML-be ágyazott A legtöbb operációs rendszeren, a legtöbb szerverrel képes az együttműködésre Rendkívül egyszerűen tanulható, a C és Java nyelvekre szintaktikailag hasonlít, a Perl jó tulajdonságait is átvette Dokumentációja részben magyar nyelven is elérhető
12
Mire képes a PHP? Web fejlesztés orientált: HTML oldalak előállítása, űrlapok feldolgozása Számos kimeneti formátum: képek, Flash mozik, PDF állományok, XML generálása Adatbázisok elérése natív vagy absztrakciós felületekkel Számos protokoll támogatása, Java osztályok példányosítása, COM objektumok elérése XML, XSLT, web service kezelési képesség
13
Együttműködés szerverekkel A főbb szerverekhez modul formában elérhető A szerver indulásakor betöltődik Állandóan a memóriában marad Bármely CGI-t támogató szerverhez illeszthető Kérésenként új PHP értelmező indul Jelentős erőforráshasználat
14
Parancssori felület (CLI) Időzítendő feladatokhoz [cron] Automatizálható feldolgozáshoz Böngésző nélküli működéshez [go-pear] PHP alkalmazások telepítőjeként
15
Konkurens technológiák, nyelvek
16
ASP (.NET) hátrányok Zárt forráskódú, kötött szállító Az alaprendszer költséges Külön vásárolható kiegészítők Operációs rendszerhez kötött 'Nem tipikus' szintakszis (Visual Basic)
17
ASP (.NET) előnyök Egységes felület több nyelvből kezelhetően Alkalmazásszerver a háttérben
18
ColdFusion hátrányok Kereskedelmi rendszer Európában nem terjedt el Grafikusok általi használatra tervezett 'tag' alapú programozási módszer
19
ColdFusion előnyök Java környezetbe automatikusan illeszkedik A HTML-től 'csak egy kis lépés'
20
Java / JSP hátrányok Általános, nem webfejlesztésre tervezett nyelv Hosszú tanulási időszak, rengeteg szabvány Nyilvános szervereken nem elérhető 'Túl sok szabály' nehezíti a gyors programozást
21
Java / JSP előnyök Kész osztálykönyvtár Alkalmazásszerver a háttérben Letisztult technológia
22
Perl hátrányok Nem kifejezetten webes programozásra szolgál CGI támogatás a legtöbb szerveren mod_perl helyett Túl sok út egy feladat megoldásához Nehezen olvasható szintakszis
23
Perl előnyök Egységes kész kódok óriási tárháza (CPAN) Kiforrott nyelv
24
Szavazásra lehetőséget adó példák
25
Szavazás három környezetben Weboldal - HTML kimenet, űrlap adatok fogadása Parancssor - szöveges kimenet / bemenet Asztali alkalmazás - ablakozós felület Általános szavazást kezelő mechanizmus
26
Szavazást kezelő függvény // A megvalósítás nem törekszik // tökéletességre, csak bemutató jellegű function szavazas($szavazat ) { $eddigi = @join("",file("szavazatok.txt")); list($igen, $nem) = explode(" ", $eddigi); if ($szavazat) { $igen++; } else { $nem++; } $allomany = fopen("szavazatok.txt", "w"); fwrite($allomany, "$igen $nem"); fclose($allomany); }
27
Szavazás HTML oldalon / 1 Szavazás <?php if (count($_POST)) { szavazas(isset($_POST['igen'])); } function szavazas($szavazat) {... } ?>
28
Szavazás HTML oldalon / 2 Létezhet-e habostorta hab nélkül?
29
Szavazás parancssorban / 1 <?php echo "Letezhet-e habostorta hab nelkul [I/N]?\n"; $stdin = fopen("php://stdin", "r"); $valasz = fgets($stdin); szavazas(trim($valasz) == "I"); function szavazas($szavazat) {... } ?>
30
Szavazás parancssorban / 2
31
Szavazás ablakban / 1 <?php dl('php_gtk.'. (strstr(PHP_OS, 'WIN') ? 'dll' : 'so') ); function szavazas($szavazat) {... } function destroy() { Gtk::main_quit(); } $window = &new GtkWindow(); $window->connect('destroy', 'destroy');
32
Szavazás ablakban / 2 $hbox = &new GtkHBox(); $window->add($hbox); $label = &new GtkLabel( "Létezhet-e habostorta hab nélkül?" ); $hbox->add($label); $button = &new GtkButton('Igen'); $button->connect( 'clicked', 'press', TRUE ); $hbox->add($button);
33
Szavazás ablakban / 3 $button = &new GtkButton('Nem'); $button->connect('clicked','press',FALSE); $hbox->add($button); $window->show_all(); Gtk::main(); function press($button, $value) { szavazas($value); } ?>
34
Szavazás ablakban / 4
35
Magyar és angol nyelvű PHP források
36
Hol kezdjem? Magyar nyelvű könyvek különböző kiadóktól Tantermi és online tanfolyamok Részben magyar nyelvű kézikönyv - hu.php.net Levelezőlista - weblabor.hu Hírek, információk - phpinfo.wish.hu Kész programok - www.hotscripts.com Még több link - php.lap.hu
37
Előretekintés
38
PHP 5 - előretekintés 2003: A Zend Engine új verziójának végleges kiadása, a PHP 5 megjelenése (?) Korrekt objektumorientált támogatás, egységesített felületek A kiterjesztések jó része a PECL-be kerül, bármikor telepíthető és törölhető lesz a PEAR telepítővel A dokumentáció is várhatóan modularizálódik
39
Újdonságok a PHP 5-ben Konstruktorok, destruktorok Privát és védett tulajdonságok és metódusok Absztrakt metódusok Egymásba ágyazott osztályok Metódus importálás Kivételkezelés a hibatűrőbb programok fejlesztése érdekében
40
Köszönöm Hojtsy Gábor goba@php.net
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.