SlideShare a Scribd company logo
1 of 26
Download to read offline
PHP
‫הווה ועתיד‬ ‫עבר‬
                       2007 ‫נובמבר‬
         <shahar.evron@gmail.com> ‫שחר עברון‬
  http://php-israel.org ‫ בישראל‬PHP ‫קבוצת משתמשי‬
‫מבוא‬

                                ‫ברוכים הבאים!‬    ‫●‬



                                       ‫מי אני?‬   ‫●‬



          ‫משתמש ב- ‪ PHP‬כחמש שנים‬            ‫–‬

    ‫עובד בזנד טכנולוגיות כשנתיים וחצי‬       ‫–‬



                                     ‫מי אתם?‬     ‫●‬



            ‫משתמש/ת מנוסה ב- ‪?PHP‬‬           ‫–‬

                 ‫מתכנת/ת ב- ‪?PHP 5.x‬‬        ‫–‬


‫2‬     ‫קבוצת משתמשי ‪ PHP‬בישראל‬               ‫70/9/11‬
‫מה זה ‪? PHP‬‬


    ‫‪ PHP‬היא שפת תכנות‬
‫)סקריפטינג( רבת משתמשים‬
 ‫המיועדת במיוחד לפיתוח ל-‬
‫‪ ,Web‬אם כי אפשר להשתמש‬
   ‫בה גם לצרכים אחרים‬
‫3‬        ‫קבוצת משתמשי ‪ PHP‬בישראל‬          ‫70/9/11‬
‫מה זה ‪?PHP‬‬

    ‫‪ PHP‬עצמה היא תוכנה חופשית / קוד פתוח, והרוב‬              ‫●‬


     ‫הגדול של התוכנה הכתובה ב- ‪ PHP‬היא חופשית‬
    ‫‪ PHP‬רצה בהצלחה על הרבה )מאד( פלטפורמות‬                   ‫●‬



       ‫‪ PHP‬היא שפה גמישה מאוד וקלה מאוד ללימוד‬               ‫●‬



‫חוץ מ- ‪ ,Web‬אפשר לעשות עוד דברים עם ‪:PHP‬‬                     ‫●‬



                                                   ‫‪CLI‬‬   ‫–‬

                               ‫‪Desktop applications‬‬      ‫–‬

                                              ‫‪Embedded‬‬   ‫–‬

‫4‬                   ‫קבוצת משתמשי ‪ PHP‬בישראל‬              ‫70/9/11‬
‫מי משתמש ב- ‪? PHP‬‬

                ‫אנחנו ואתם, ועוד הרבה מאוד אנשים‬         ‫●‬



    ‫‪ PHP‬היא כנראה שפת ה- ‪ Web‬הפופולרית ביותר,‬            ‫●‬


     ‫והיא אחד הכוחות המניעים את השינויים ב- ‪.Web‬‬
        ‫חלק גדול מאתרי ה- ‪ Web‬הפופולריים ביותר‬           ‫●‬


                                ‫מונעים ע“י ‪:PHP‬‬
    ‫‪... ,Yahoo!, Flickr, Facebook, Digg, Wikipedia‬‬   ‫–‬




      ‫... אבל גם בנקים, ממשלות וחברות ענק בינ“ל‬          ‫●‬


‫5‬                     ‫קבוצת משתמשי ‪ PHP‬בישראל‬        ‫70/9/11‬
‫מי משתמש ב- ‪? PHP‬‬




    ‫מקור: ‪Netcraft‬‬


‫6‬                    ‫קבוצת משתמשי ‪ PHP‬בישראל‬   ‫70/9/11‬
‫עבר: ההיסטוריה בקצרה...‬

    ‫5991: רסמוס לרדורף משחרר את ‪PHP/FI‬‬                   ‫●‬



         ‫תחילת הדרך: אוסף של סקריפטים ב- ‪Perl‬‬        ‫–‬

    ‫עם הזמן הפרוייקט הוסב ל- ‪ ,C‬ונוספו יכולות גישה‬   ‫–‬
            ‫לבסיסי נתונים, שאפשרו יצירת תוכן דינמי‬


                                   ‫7991: 0.2 ‪PHP/FI‬‬      ‫●‬


                ‫כמה אלפי משתמשים ברחבי העולם‬         ‫–‬

               ‫כ- 000,05 )%1( משרתי האינטרנט‬         ‫–‬


‫7‬                  ‫קבוצת משתמשי ‪ PHP‬בישראל‬           ‫70/9/11‬
‫עבר: ההיסטוריה בקצרה...‬

    ‫7991: אנדי גוטמנס וזאב סורסקי כותבים מחדש ‬                ‫●‬


             ‫את 0.3 ‪ PHP‬כפרוייקט לימודי לטכניון‬
        ‫הגרסה הראשונה ש“מזכירה“ את ‪ PHP‬של היום‬            ‫–‬

         ‫שם חדש: ‪PHP: Hypertext Preprocessor‬‬              ‫–‬

                     ‫מפתחים רבים נוספים לפרוייקט‬          ‫–‬

                                       ‫שיפורי תחביר, ‪OO‬‬   ‫–‬

                           ‫מאות אלפי אתרים )%01(‬          ‫–‬

                                 ‫שחרור סופי: יוני 8991‬    ‫–‬


‫8‬                  ‫קבוצת משתמשי ‪ PHP‬בישראל‬                ‫70/9/11‬
‫עבר: ההיסטוריה בקצרה...‬

    ‫8991: אנדי וזאב מתחילים לכתוב מחדש את‬                      ‫●‬


    ‫הליבה של ‪ :PHP‬כך נוצר ה- ‪Zend Engine‬‬
                     ‫שיפור ביצועים וארכיטקטורה ‬            ‫–‬

                                         ‫שיפור מודולריות‬   ‫–‬

               ‫0.4 ‪ PHP‬משוחרר במאי 0002‬                        ‫●‬



                                              ‫‪Sessions‬‬     ‫–‬

                                 ‫‪Output Buffering‬‬          ‫–‬

          ‫תמיכה בשרתים נוספים מלבד ‪Apache‬‬                  ‫–‬


‫9‬              ‫קבוצת משתמשי ‪ PHP‬בישראל‬                     ‫70/9/11‬
‫עבר: ההיסטוריה בקצרה...‬

                ‫יולי 4002: ‪ PHP 5.x‬משוחרר‬                    ‫●‬



                                  ‫0.2 ‪Zend Engine‬‬        ‫–‬

        ‫כתיבה מחדש של ה- ‪Object model‬‬                    ‫–‬

            ‫1.5 ‪ PHP‬משוחרר בנובמבר 5002‬                  ‫–‬

         ‫שיפורי ביצועים ותיקוני באגים רבים מאוד ‬     ‫●‬


                                ‫‪ PDO‬כברירת מחדל‬      ‫●‬



            ‫2.5 ‪ PHP‬משוחרר בנובמבר 6002‬                  ‫–‬

     ‫שיפורים בניהול הזיכרון ושיפורי ביצועים נוספים‬   ‫●‬


                  ‫‪Filter, JSON, Upload hooks‬‬         ‫●‬




‫01‬             ‫קבוצת משתמשי ‪ PHP‬בישראל‬                   ‫70/9/11‬
‫אז מה עוד אפשר‬
‫לעשות עם ‪?PHP 5.x‬‬
      ‫)חוץ מ- ‪(?OOP‬‬
PDO

     try {
         $db = new PDO('mysql:hostname=losthost;dbname=mydb',
                       'user',
                       'xxxxx');

     } catch (PDOException $e) {
         echo quot;Error connecting to DB: {$e->getMessage()}quot;;
         exit;
     }

     $stmt = $db->prepare('INSERT INTO employees (name, salary)
                           VALUES(?, ?)');

     foreach ($employeeList as $emp) {
         $stmt->execute(array($emp['name'], $emp['salary']));
     }



12                        ‫ בישראל‬PHP ‫קבוצת משתמשי‬               11/9/07
XML: SimpleXML

     $xml = <<<EOXML
     <bookmarks>
         <bookmark>
             <name>CNN World News</name>
             <url>http://cnn.com</url>
         </bookmark>
         <bookmark>
             <name>Planet PHP</name>
             <url>http://planet-php.org</url>
         </bookmark>
     </bookmarks>
     EOXML;

     $bookmarks = new SimpleXMLElement($xml);
     foreach($bookmarks->bookmark as $bmark) {
         echo quot;{$bmark->name}: {$bmark->url}nquot;;
     }


13                        ‫ בישראל‬PHP ‫קבוצת משתמשי‬   11/9/07
XML: DOM

     // continuing from previous example...
     $domBookmarks = dom_import_simplexml($bookmarks);

     $domDoc = new DOMDocument();
     $domBookmarks = $domDoc->importNode($domBookmarks, true);
     $domDoc->appendChild($domBookmarks);

     foreach ($domDoc->getElementsByTagName('bookmark') as $bmark)
     {
         $rank = $domDoc->createElement('ranking', '5');
         $bmark->appendChild($rank);
     }

     echo $domDoc->saveXML();




14                        ‫ בישראל‬PHP ‫קבוצת משתמשי‬                11/9/07
Web Services: SOAP


     // SOAP Server
     class myServiceClass
     {
         public function doServiceAction($foo, $bar)
         {
             // ...
         }
     }

     // Set up SOAP server
     $server = new SoapServer('myService.wsdl');
     $server->setClass('myServiceClass');

     // Handle request
     $server->handle();



15                        ‫ בישראל‬PHP ‫קבוצת משתמשי‬      11/9/07
Web Services: SOAP


     // SOAP client
     $myWsdl = 'http://www.example.com/service/myService.wsdl';
     $client = new SoapClient($myWsdl);

     try {
         $myData = $client->doServiceAction('foo', 'bar');

     } catch (SoapFault $fault) {
         echo quot;Error getting data from remote server: quot; .
             $fault->getMessage();

         exit;
     }




16                        ‫ בישראל‬PHP ‫קבוצת משתמשי‬             11/9/07
SPL: Standard PHP Library

               ‫( וממשקים‬Classes) ‫אוסף של מחלקות‬                     ●


            ‫( שנועדו לפתור בעיות נפוצות‬Interfaces)
●
     http://www.php.net/~helly/php/ext/spl/


     // SPL Directory Iterator
     $musicDir = new DirectoryIterator('/home/shahar/Music');

     foreach ($musicDir as $song) {
         if ($song->isDir()) continue;
         echo quot;$song - Last played: quot; .
              date(quot;Y-m-d h:i:squot;, $song->getATime()) . quot;nquot;;
     }




17                           ‫ בישראל‬PHP ‫קבוצת משתמשי‬            11/9/07
SPL: Standard PHP Library

     // SPL Interfaces: Iterator, Countable

     class PhotoAlbum implements Iterator, Countable
     {
         // ... a bunch of code here ...
     }

     $album = new PhotoAlbum('/home/shahar/Albums/India');

     // Access the object using the 'count()' function
     echo quot;The {$album->getTitle()} contains quot; . count($album) .
          quot; photos.<br />quot;;

     // Iterate using 'foreach()'
     foreach ($album as $photo) {
         echo htmlspecialchars($photo->getTitle()) .
              '<img src=quot;' . $photo->getUrl() . 'quot; />';
     }


18                        ‫ בישראל‬PHP ‫קבוצת משתמשי‬             11/9/07
PHP Frameworks




http://cakephp.org


                              http://framework.zend.com

                                                                          http://pear.php.net
 http://symfony-project.com




                                                             http://ez.no/ezcomponents
 19                                ‫ בישראל‬PHP ‫קבוצת משתמשי‬                         11/9/07
‫אפליקציות פופולריות‬




‫02‬   ‫קבוצת משתמשי ‪ PHP‬בישראל‬   ‫70/9/11‬
‫‪ PHP 4.x‬מת!‬

     ‫7002/7/31 – הכרזה על quot;סוף חייםquot; ל- 4‪PHP‬‬             ‫●‬



               ‫בדיוק 3 שנים אחרי ש- 5‪ PHP‬שוחרר‬       ‫–‬



         ‫החל מה-7002/21/13 רק עידכוני אבטחה‬              ‫●‬

                                      ‫קריטיים‬
              ‫הפיתוח יפסק לחלוטין ב- 8002/8/8‬            ‫●‬




‫12‬                 ‫קבוצת משתמשי ‪ PHP‬בישראל‬           ‫70/9/11‬
6.0 -‫ ו‬PHP 5.3 :‫העתיד‬

     (‫ מתוכנן לתחילת 8002 )כנראה‬PHP 5.3                  ●



                                        Namespaces   –

                    Partial Unicode Support          –

                            Late Static Binding      –

                         Class::__callStatic()       –



                                           ? PHP 6.0     ●


             “It's ready when it's ready”            –

                         Full Unicode Support        –
22            ‫ בישראל‬PHP ‫קבוצת משתמשי‬                11/9/07
6.0 -‫ ו‬PHP 5.3 :‫העתיד‬

                                         ...‫: לפני‬Namespaces   ●


     class Zend_Http_Client
     {
         const METHOD_POST = 'POST';

         public function request($method)
         {
             // ...
         }

         static public function encodeFormData()
         {
             // ...
         }
     }

     $client = new Zend_Http_Client();
     $client->request(Zend_Http_Client::METHOD_POST);
     $body = Zend_Http_Client::encodeFormData();

23                           ‫ בישראל‬PHP ‫קבוצת משתמשי‬      11/9/07
6.0 -‫ ו‬PHP 5.3 :‫העתיד‬
     namespace Zend::Http; // <--
     class Client
                                        ...‫: אחרי‬Namespaces   ●

     {
         const METHOD_POST = 'POST';

         public function request($method)
         {
             // ...
         }

         static public function encodeFormData()
         {
             // ...
         }
     }

     use Zend::Http::Client as Client; // <--
     $client = new Client();
     $client->request(Client::METHOD_POST);
     $body = Client::encodeFormData();


24                           ‫ בישראל‬PHP ‫קבוצת משתמשי‬     11/9/07
‫שאלות?‬
‫תודה רבה‬


This work is licensed under the Creative Commons Attribution-Share Alike 2.5 Israel License. To view a copy of
this license, visit http://creativecommons.org/licenses/by-sa/2.5/il/ or send a letter to Creative Commons, 171
                          Second Street, Suite 300, San Francisco, California, 94105, USA.

More Related Content

Viewers also liked

diagrams an Delueze
diagrams an Deluezediagrams an Delueze
diagrams an Deluezelevitem
 
Amazing Digital Projects 11
Amazing Digital Projects 11Amazing Digital Projects 11
Amazing Digital Projects 11Zohar Urian
 
Digital innovation &amp; creative projects 41
Digital innovation &amp; creative projects 41Digital innovation &amp; creative projects 41
Digital innovation &amp; creative projects 41Zohar Urian
 
Gods In The Machine
Gods In The MachineGods In The Machine
Gods In The MachineRinat Korbet
 
Linked in 101 Part I: Let's Get Connected
Linked in 101 Part I: Let's Get ConnectedLinked in 101 Part I: Let's Get Connected
Linked in 101 Part I: Let's Get ConnectedJody Krasner Gladstein
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShareSlideShare
 

Viewers also liked (7)

diagrams an Delueze
diagrams an Deluezediagrams an Delueze
diagrams an Delueze
 
Amazing Digital Projects 11
Amazing Digital Projects 11Amazing Digital Projects 11
Amazing Digital Projects 11
 
Hatikvah
HatikvahHatikvah
Hatikvah
 
Digital innovation &amp; creative projects 41
Digital innovation &amp; creative projects 41Digital innovation &amp; creative projects 41
Digital innovation &amp; creative projects 41
 
Gods In The Machine
Gods In The MachineGods In The Machine
Gods In The Machine
 
Linked in 101 Part I: Let's Get Connected
Linked in 101 Part I: Let's Get ConnectedLinked in 101 Part I: Let's Get Connected
Linked in 101 Part I: Let's Get Connected
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShare
 

Similar to PHP - עבר הווה ועתיד

PHP ואבטחה - חלק שני
PHP ואבטחה - חלק שניPHP ואבטחה - חלק שני
PHP ואבטחה - חלק שניShahar Evron
 
וורדפרס בחמש דקות (WordPress in five minutes, Hebrew))
וורדפרס בחמש דקות (WordPress in five minutes, Hebrew))וורדפרס בחמש דקות (WordPress in five minutes, Hebrew))
וורדפרס בחמש דקות (WordPress in five minutes, Hebrew))ran.hartstein
 
IBM WebSphere Portal and Web Content management - Hebrew Overview
IBM WebSphere Portal and Web Content management - Hebrew OverviewIBM WebSphere Portal and Web Content management - Hebrew Overview
IBM WebSphere Portal and Web Content management - Hebrew OverviewDvir Reznik
 
Hebrew, Introduction to Zend Controller And new technique
Hebrew, Introduction to Zend Controller And new techniqueHebrew, Introduction to Zend Controller And new technique
Hebrew, Introduction to Zend Controller And new techniqueNir Tayeb
 
Slackware Tip
Slackware TipSlackware Tip
Slackware Tipmikilev3
 
עיצוב ויזואלי של מידע ליזי כהן שיעור 2
עיצוב ויזואלי של מידע   ליזי כהן   שיעור 2עיצוב ויזואלי של מידע   ליזי כהן   שיעור 2
עיצוב ויזואלי של מידע ליזי כהן שיעור 2lizicohen
 
עיצוב ויזואלי של מידע ליזי כהן שיעור 1
עיצוב ויזואלי של מידע   ליזי כהן   שיעור 1עיצוב ויזואלי של מידע   ליזי כהן   שיעור 1
עיצוב ויזואלי של מידע ליזי כהן שיעור 1lizicohen
 
פסק דין מאיר בוחבוט פדויי שבי
פסק דין מאיר  בוחבוט פדויי שביפסק דין מאיר  בוחבוט פדויי שבי
פסק דין מאיר בוחבוט פדויי שביsmile2life Israel
 
קורס בניית טורבינות רוח 7-12.6
קורס בניית טורבינות רוח 7-12.6קורס בניית טורבינות רוח 7-12.6
קורס בניית טורבינות רוח 7-12.6Hanan E. Levy
 
Cloud Computing round table (Hebrew) summary
Cloud Computing round table (Hebrew) summaryCloud Computing round table (Hebrew) summary
Cloud Computing round table (Hebrew) summaryGalit Fein
 
על היפה רותם אפפל
על היפה רותם אפפלעל היפה רותם אפפל
על היפה רותם אפפלrotem42
 
The National Water Conduit
The National Water ConduitThe National Water Conduit
The National Water ConduitIlan
 
GoLinks שיווק אינטרנט
GoLinks שיווק אינטרנטGoLinks שיווק אינטרנט
GoLinks שיווק אינטרנטadirr
 
It Help Desk Round Table Summary
It Help Desk Round Table SummaryIt Help Desk Round Table Summary
It Help Desk Round Table SummaryGalit Fein
 
ויקיפדיה ומאגרי מידע באינטרנט
ויקיפדיה ומאגרי מידע באינטרנטויקיפדיה ומאגרי מידע באינטרנט
ויקיפדיה ומאגרי מידע באינטרנטDror Kamir
 
Erp Round Table Summary
Erp Round Table SummaryErp Round Table Summary
Erp Round Table SummarySTKI
 

Similar to PHP - עבר הווה ועתיד (20)

PHP ואבטחה - חלק שני
PHP ואבטחה - חלק שניPHP ואבטחה - חלק שני
PHP ואבטחה - חלק שני
 
וורדפרס בחמש דקות (WordPress in five minutes, Hebrew))
וורדפרס בחמש דקות (WordPress in five minutes, Hebrew))וורדפרס בחמש דקות (WordPress in five minutes, Hebrew))
וורדפרס בחמש דקות (WordPress in five minutes, Hebrew))
 
IBM WebSphere Portal and Web Content management - Hebrew Overview
IBM WebSphere Portal and Web Content management - Hebrew OverviewIBM WebSphere Portal and Web Content management - Hebrew Overview
IBM WebSphere Portal and Web Content management - Hebrew Overview
 
Hebrew, Introduction to Zend Controller And new technique
Hebrew, Introduction to Zend Controller And new techniqueHebrew, Introduction to Zend Controller And new technique
Hebrew, Introduction to Zend Controller And new technique
 
Slackware Tip
Slackware TipSlackware Tip
Slackware Tip
 
עיצוב ויזואלי של מידע ליזי כהן שיעור 2
עיצוב ויזואלי של מידע   ליזי כהן   שיעור 2עיצוב ויזואלי של מידע   ליזי כהן   שיעור 2
עיצוב ויזואלי של מידע ליזי כהן שיעור 2
 
Netica UX design
Netica UX designNetica UX design
Netica UX design
 
עיצוב ויזואלי של מידע ליזי כהן שיעור 1
עיצוב ויזואלי של מידע   ליזי כהן   שיעור 1עיצוב ויזואלי של מידע   ליזי כהן   שיעור 1
עיצוב ויזואלי של מידע ליזי כהן שיעור 1
 
Mount Mutant
Mount MutantMount Mutant
Mount Mutant
 
פסק דין מאיר בוחבוט פדויי שבי
פסק דין מאיר  בוחבוט פדויי שביפסק דין מאיר  בוחבוט פדויי שבי
פסק דין מאיר בוחבוט פדויי שבי
 
קורס בניית טורבינות רוח 7-12.6
קורס בניית טורבינות רוח 7-12.6קורס בניית טורבינות רוח 7-12.6
קורס בניית טורבינות רוח 7-12.6
 
Ella Jimmy Iseeqs Pm Heart
Ella Jimmy Iseeqs Pm HeartElla Jimmy Iseeqs Pm Heart
Ella Jimmy Iseeqs Pm Heart
 
Cloud Computing round table (Hebrew) summary
Cloud Computing round table (Hebrew) summaryCloud Computing round table (Hebrew) summary
Cloud Computing round table (Hebrew) summary
 
Profile
ProfileProfile
Profile
 
על היפה רותם אפפל
על היפה רותם אפפלעל היפה רותם אפפל
על היפה רותם אפפל
 
The National Water Conduit
The National Water ConduitThe National Water Conduit
The National Water Conduit
 
GoLinks שיווק אינטרנט
GoLinks שיווק אינטרנטGoLinks שיווק אינטרנט
GoLinks שיווק אינטרנט
 
It Help Desk Round Table Summary
It Help Desk Round Table SummaryIt Help Desk Round Table Summary
It Help Desk Round Table Summary
 
ויקיפדיה ומאגרי מידע באינטרנט
ויקיפדיה ומאגרי מידע באינטרנטויקיפדיה ומאגרי מידע באינטרנט
ויקיפדיה ומאגרי מידע באינטרנט
 
Erp Round Table Summary
Erp Round Table SummaryErp Round Table Summary
Erp Round Table Summary
 

More from Shahar Evron

Best Practices in PHP Application Deployment
Best Practices in PHP Application DeploymentBest Practices in PHP Application Deployment
Best Practices in PHP Application DeploymentShahar Evron
 
Amazon Cloud Services and Zend Framework
Amazon Cloud Services and Zend FrameworkAmazon Cloud Services and Zend Framework
Amazon Cloud Services and Zend FrameworkShahar Evron
 
PHP and Zend Framework on Windows
PHP and Zend Framework on WindowsPHP and Zend Framework on Windows
PHP and Zend Framework on WindowsShahar Evron
 
Zend Server: A Guided Tour
Zend Server: A Guided TourZend Server: A Guided Tour
Zend Server: A Guided TourShahar Evron
 
Zend Server: Scalability & Performance
Zend Server: Scalability & PerformanceZend Server: Scalability & Performance
Zend Server: Scalability & PerformanceShahar Evron
 
Scaling PHP Applications with Zend Platform
Scaling PHP Applications with Zend PlatformScaling PHP Applications with Zend Platform
Scaling PHP Applications with Zend PlatformShahar Evron
 
Zend Framework Components for non-framework Development
Zend Framework Components for non-framework DevelopmentZend Framework Components for non-framework Development
Zend Framework Components for non-framework DevelopmentShahar Evron
 
PHP ואבטחה - חלק ראשון
PHP ואבטחה - חלק ראשוןPHP ואבטחה - חלק ראשון
PHP ואבטחה - חלק ראשוןShahar Evron
 
Content Indexing with Zend_Search_Lucene
Content Indexing with Zend_Search_LuceneContent Indexing with Zend_Search_Lucene
Content Indexing with Zend_Search_LuceneShahar Evron
 
Building Scalable Development Environments
Building Scalable Development EnvironmentsBuilding Scalable Development Environments
Building Scalable Development EnvironmentsShahar Evron
 

More from Shahar Evron (11)

Best Practices in PHP Application Deployment
Best Practices in PHP Application DeploymentBest Practices in PHP Application Deployment
Best Practices in PHP Application Deployment
 
Amazon Cloud Services and Zend Framework
Amazon Cloud Services and Zend FrameworkAmazon Cloud Services and Zend Framework
Amazon Cloud Services and Zend Framework
 
PHP and Zend Framework on Windows
PHP and Zend Framework on WindowsPHP and Zend Framework on Windows
PHP and Zend Framework on Windows
 
Zend Server: A Guided Tour
Zend Server: A Guided TourZend Server: A Guided Tour
Zend Server: A Guided Tour
 
Zend Server: Scalability & Performance
Zend Server: Scalability & PerformanceZend Server: Scalability & Performance
Zend Server: Scalability & Performance
 
Intro To Couch Db
Intro To Couch DbIntro To Couch Db
Intro To Couch Db
 
Scaling PHP Applications with Zend Platform
Scaling PHP Applications with Zend PlatformScaling PHP Applications with Zend Platform
Scaling PHP Applications with Zend Platform
 
Zend Framework Components for non-framework Development
Zend Framework Components for non-framework DevelopmentZend Framework Components for non-framework Development
Zend Framework Components for non-framework Development
 
PHP ואבטחה - חלק ראשון
PHP ואבטחה - חלק ראשוןPHP ואבטחה - חלק ראשון
PHP ואבטחה - חלק ראשון
 
Content Indexing with Zend_Search_Lucene
Content Indexing with Zend_Search_LuceneContent Indexing with Zend_Search_Lucene
Content Indexing with Zend_Search_Lucene
 
Building Scalable Development Environments
Building Scalable Development EnvironmentsBuilding Scalable Development Environments
Building Scalable Development Environments
 

Recently uploaded

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 

Recently uploaded (20)

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 

PHP - עבר הווה ועתיד

  • 1. PHP ‫הווה ועתיד‬ ‫עבר‬ 2007 ‫נובמבר‬ <shahar.evron@gmail.com> ‫שחר עברון‬ http://php-israel.org ‫ בישראל‬PHP ‫קבוצת משתמשי‬
  • 2. ‫מבוא‬ ‫ברוכים הבאים!‬ ‫●‬ ‫מי אני?‬ ‫●‬ ‫משתמש ב- ‪ PHP‬כחמש שנים‬ ‫–‬ ‫עובד בזנד טכנולוגיות כשנתיים וחצי‬ ‫–‬ ‫מי אתם?‬ ‫●‬ ‫משתמש/ת מנוסה ב- ‪?PHP‬‬ ‫–‬ ‫מתכנת/ת ב- ‪?PHP 5.x‬‬ ‫–‬ ‫2‬ ‫קבוצת משתמשי ‪ PHP‬בישראל‬ ‫70/9/11‬
  • 3. ‫מה זה ‪? PHP‬‬ ‫‪ PHP‬היא שפת תכנות‬ ‫)סקריפטינג( רבת משתמשים‬ ‫המיועדת במיוחד לפיתוח ל-‬ ‫‪ ,Web‬אם כי אפשר להשתמש‬ ‫בה גם לצרכים אחרים‬ ‫3‬ ‫קבוצת משתמשי ‪ PHP‬בישראל‬ ‫70/9/11‬
  • 4. ‫מה זה ‪?PHP‬‬ ‫‪ PHP‬עצמה היא תוכנה חופשית / קוד פתוח, והרוב‬ ‫●‬ ‫הגדול של התוכנה הכתובה ב- ‪ PHP‬היא חופשית‬ ‫‪ PHP‬רצה בהצלחה על הרבה )מאד( פלטפורמות‬ ‫●‬ ‫‪ PHP‬היא שפה גמישה מאוד וקלה מאוד ללימוד‬ ‫●‬ ‫חוץ מ- ‪ ,Web‬אפשר לעשות עוד דברים עם ‪:PHP‬‬ ‫●‬ ‫‪CLI‬‬ ‫–‬ ‫‪Desktop applications‬‬ ‫–‬ ‫‪Embedded‬‬ ‫–‬ ‫4‬ ‫קבוצת משתמשי ‪ PHP‬בישראל‬ ‫70/9/11‬
  • 5. ‫מי משתמש ב- ‪? PHP‬‬ ‫אנחנו ואתם, ועוד הרבה מאוד אנשים‬ ‫●‬ ‫‪ PHP‬היא כנראה שפת ה- ‪ Web‬הפופולרית ביותר,‬ ‫●‬ ‫והיא אחד הכוחות המניעים את השינויים ב- ‪.Web‬‬ ‫חלק גדול מאתרי ה- ‪ Web‬הפופולריים ביותר‬ ‫●‬ ‫מונעים ע“י ‪:PHP‬‬ ‫‪... ,Yahoo!, Flickr, Facebook, Digg, Wikipedia‬‬ ‫–‬ ‫... אבל גם בנקים, ממשלות וחברות ענק בינ“ל‬ ‫●‬ ‫5‬ ‫קבוצת משתמשי ‪ PHP‬בישראל‬ ‫70/9/11‬
  • 6. ‫מי משתמש ב- ‪? PHP‬‬ ‫מקור: ‪Netcraft‬‬ ‫6‬ ‫קבוצת משתמשי ‪ PHP‬בישראל‬ ‫70/9/11‬
  • 7. ‫עבר: ההיסטוריה בקצרה...‬ ‫5991: רסמוס לרדורף משחרר את ‪PHP/FI‬‬ ‫●‬ ‫תחילת הדרך: אוסף של סקריפטים ב- ‪Perl‬‬ ‫–‬ ‫עם הזמן הפרוייקט הוסב ל- ‪ ,C‬ונוספו יכולות גישה‬ ‫–‬ ‫לבסיסי נתונים, שאפשרו יצירת תוכן דינמי‬ ‫7991: 0.2 ‪PHP/FI‬‬ ‫●‬ ‫כמה אלפי משתמשים ברחבי העולם‬ ‫–‬ ‫כ- 000,05 )%1( משרתי האינטרנט‬ ‫–‬ ‫7‬ ‫קבוצת משתמשי ‪ PHP‬בישראל‬ ‫70/9/11‬
  • 8. ‫עבר: ההיסטוריה בקצרה...‬ ‫7991: אנדי גוטמנס וזאב סורסקי כותבים מחדש ‬ ‫●‬ ‫את 0.3 ‪ PHP‬כפרוייקט לימודי לטכניון‬ ‫הגרסה הראשונה ש“מזכירה“ את ‪ PHP‬של היום‬ ‫–‬ ‫שם חדש: ‪PHP: Hypertext Preprocessor‬‬ ‫–‬ ‫מפתחים רבים נוספים לפרוייקט‬ ‫–‬ ‫שיפורי תחביר, ‪OO‬‬ ‫–‬ ‫מאות אלפי אתרים )%01(‬ ‫–‬ ‫שחרור סופי: יוני 8991‬ ‫–‬ ‫8‬ ‫קבוצת משתמשי ‪ PHP‬בישראל‬ ‫70/9/11‬
  • 9. ‫עבר: ההיסטוריה בקצרה...‬ ‫8991: אנדי וזאב מתחילים לכתוב מחדש את‬ ‫●‬ ‫הליבה של ‪ :PHP‬כך נוצר ה- ‪Zend Engine‬‬ ‫שיפור ביצועים וארכיטקטורה ‬ ‫–‬ ‫שיפור מודולריות‬ ‫–‬ ‫0.4 ‪ PHP‬משוחרר במאי 0002‬ ‫●‬ ‫‪Sessions‬‬ ‫–‬ ‫‪Output Buffering‬‬ ‫–‬ ‫תמיכה בשרתים נוספים מלבד ‪Apache‬‬ ‫–‬ ‫9‬ ‫קבוצת משתמשי ‪ PHP‬בישראל‬ ‫70/9/11‬
  • 10. ‫עבר: ההיסטוריה בקצרה...‬ ‫יולי 4002: ‪ PHP 5.x‬משוחרר‬ ‫●‬ ‫0.2 ‪Zend Engine‬‬ ‫–‬ ‫כתיבה מחדש של ה- ‪Object model‬‬ ‫–‬ ‫1.5 ‪ PHP‬משוחרר בנובמבר 5002‬ ‫–‬ ‫שיפורי ביצועים ותיקוני באגים רבים מאוד ‬ ‫●‬ ‫‪ PDO‬כברירת מחדל‬ ‫●‬ ‫2.5 ‪ PHP‬משוחרר בנובמבר 6002‬ ‫–‬ ‫שיפורים בניהול הזיכרון ושיפורי ביצועים נוספים‬ ‫●‬ ‫‪Filter, JSON, Upload hooks‬‬ ‫●‬ ‫01‬ ‫קבוצת משתמשי ‪ PHP‬בישראל‬ ‫70/9/11‬
  • 12. PDO try { $db = new PDO('mysql:hostname=losthost;dbname=mydb', 'user', 'xxxxx'); } catch (PDOException $e) { echo quot;Error connecting to DB: {$e->getMessage()}quot;; exit; } $stmt = $db->prepare('INSERT INTO employees (name, salary) VALUES(?, ?)'); foreach ($employeeList as $emp) { $stmt->execute(array($emp['name'], $emp['salary'])); } 12 ‫ בישראל‬PHP ‫קבוצת משתמשי‬ 11/9/07
  • 13. XML: SimpleXML $xml = <<<EOXML <bookmarks> <bookmark> <name>CNN World News</name> <url>http://cnn.com</url> </bookmark> <bookmark> <name>Planet PHP</name> <url>http://planet-php.org</url> </bookmark> </bookmarks> EOXML; $bookmarks = new SimpleXMLElement($xml); foreach($bookmarks->bookmark as $bmark) { echo quot;{$bmark->name}: {$bmark->url}nquot;; } 13 ‫ בישראל‬PHP ‫קבוצת משתמשי‬ 11/9/07
  • 14. XML: DOM // continuing from previous example... $domBookmarks = dom_import_simplexml($bookmarks); $domDoc = new DOMDocument(); $domBookmarks = $domDoc->importNode($domBookmarks, true); $domDoc->appendChild($domBookmarks); foreach ($domDoc->getElementsByTagName('bookmark') as $bmark) { $rank = $domDoc->createElement('ranking', '5'); $bmark->appendChild($rank); } echo $domDoc->saveXML(); 14 ‫ בישראל‬PHP ‫קבוצת משתמשי‬ 11/9/07
  • 15. Web Services: SOAP // SOAP Server class myServiceClass { public function doServiceAction($foo, $bar) { // ... } } // Set up SOAP server $server = new SoapServer('myService.wsdl'); $server->setClass('myServiceClass'); // Handle request $server->handle(); 15 ‫ בישראל‬PHP ‫קבוצת משתמשי‬ 11/9/07
  • 16. Web Services: SOAP // SOAP client $myWsdl = 'http://www.example.com/service/myService.wsdl'; $client = new SoapClient($myWsdl); try { $myData = $client->doServiceAction('foo', 'bar'); } catch (SoapFault $fault) { echo quot;Error getting data from remote server: quot; . $fault->getMessage(); exit; } 16 ‫ בישראל‬PHP ‫קבוצת משתמשי‬ 11/9/07
  • 17. SPL: Standard PHP Library ‫( וממשקים‬Classes) ‫אוסף של מחלקות‬ ● ‫( שנועדו לפתור בעיות נפוצות‬Interfaces) ● http://www.php.net/~helly/php/ext/spl/ // SPL Directory Iterator $musicDir = new DirectoryIterator('/home/shahar/Music'); foreach ($musicDir as $song) { if ($song->isDir()) continue; echo quot;$song - Last played: quot; . date(quot;Y-m-d h:i:squot;, $song->getATime()) . quot;nquot;; } 17 ‫ בישראל‬PHP ‫קבוצת משתמשי‬ 11/9/07
  • 18. SPL: Standard PHP Library // SPL Interfaces: Iterator, Countable class PhotoAlbum implements Iterator, Countable { // ... a bunch of code here ... } $album = new PhotoAlbum('/home/shahar/Albums/India'); // Access the object using the 'count()' function echo quot;The {$album->getTitle()} contains quot; . count($album) . quot; photos.<br />quot;; // Iterate using 'foreach()' foreach ($album as $photo) { echo htmlspecialchars($photo->getTitle()) . '<img src=quot;' . $photo->getUrl() . 'quot; />'; } 18 ‫ בישראל‬PHP ‫קבוצת משתמשי‬ 11/9/07
  • 19. PHP Frameworks http://cakephp.org http://framework.zend.com http://pear.php.net http://symfony-project.com http://ez.no/ezcomponents 19 ‫ בישראל‬PHP ‫קבוצת משתמשי‬ 11/9/07
  • 20. ‫אפליקציות פופולריות‬ ‫02‬ ‫קבוצת משתמשי ‪ PHP‬בישראל‬ ‫70/9/11‬
  • 21. ‫‪ PHP 4.x‬מת!‬ ‫7002/7/31 – הכרזה על quot;סוף חייםquot; ל- 4‪PHP‬‬ ‫●‬ ‫בדיוק 3 שנים אחרי ש- 5‪ PHP‬שוחרר‬ ‫–‬ ‫החל מה-7002/21/13 רק עידכוני אבטחה‬ ‫●‬ ‫קריטיים‬ ‫הפיתוח יפסק לחלוטין ב- 8002/8/8‬ ‫●‬ ‫12‬ ‫קבוצת משתמשי ‪ PHP‬בישראל‬ ‫70/9/11‬
  • 22. 6.0 -‫ ו‬PHP 5.3 :‫העתיד‬ (‫ מתוכנן לתחילת 8002 )כנראה‬PHP 5.3 ● Namespaces – Partial Unicode Support – Late Static Binding – Class::__callStatic() – ? PHP 6.0 ● “It's ready when it's ready” – Full Unicode Support – 22 ‫ בישראל‬PHP ‫קבוצת משתמשי‬ 11/9/07
  • 23. 6.0 -‫ ו‬PHP 5.3 :‫העתיד‬ ...‫: לפני‬Namespaces ● class Zend_Http_Client { const METHOD_POST = 'POST'; public function request($method) { // ... } static public function encodeFormData() { // ... } } $client = new Zend_Http_Client(); $client->request(Zend_Http_Client::METHOD_POST); $body = Zend_Http_Client::encodeFormData(); 23 ‫ בישראל‬PHP ‫קבוצת משתמשי‬ 11/9/07
  • 24. 6.0 -‫ ו‬PHP 5.3 :‫העתיד‬ namespace Zend::Http; // <-- class Client ...‫: אחרי‬Namespaces ● { const METHOD_POST = 'POST'; public function request($method) { // ... } static public function encodeFormData() { // ... } } use Zend::Http::Client as Client; // <-- $client = new Client(); $client->request(Client::METHOD_POST); $body = Client::encodeFormData(); 24 ‫ בישראל‬PHP ‫קבוצת משתמשי‬ 11/9/07
  • 26. ‫תודה רבה‬ This work is licensed under the Creative Commons Attribution-Share Alike 2.5 Israel License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/2.5/il/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.