DZone.com: PHPUnit_Selenium

Auf DZone.com heute Giorgio Sironi hat eine kurze Anleitung zeigt Ihnen, wie die Einrichtung und Nutzung der PHPUnit_Selenium Komponente in den neuesten Versionen der beliebten Test-Software .

Mit dem Release 1.2 unterstützt PHPUnit_Selenium (grundsätzlich) zum ersten Mal die Selenium 2 WebDriver API. Während PHPUnit_Selenium arbeitete bereits mit Selenium 2, tat sie dies nur mit Hilfe der Selenium 1-Emulation in das Glas eingeschlossen, jetzt bietet ein objektorientiertes API rechts nativ in einer Basis PHPUnit Testfall unterstützt, in PEAR-Kanal PHPUnit ist ausgeliefert.

Er umfasst die Schritte, die Sie brauchen, um sie aus dem PEAR-Kanal ziehen werde und wie Sie einen Testfall auf der PHPUnit_Extensions_Selenium2TestCase Objekt. Er gibt ein paar Beispiele, wie verschiedene Komponenten auf der Seite auszuwählen (via CSS-Selektoren und XPath), behaupten, dass die richtigen Informationen gibt es und die Interaktion mit Formularen.

PHPDeveloper.org

Dzone.com: Open Source PHP-Projekte des Jahres 2011

Auf Dzone.com heute Giorgio Sironi hat geschrieben, was er zu einigen der beliebtesten Open Source PHP-Projekte des Jahres 2011 einschließlich Symfony2, Lehre und HipHop.

Diese nicht-wissenschaftliche Analyse der beliebte und spannende PHP-Projekte geht von Untersuchungen an aktiven Projekten auf SourceForge und GitHub, die letztere ist, wo die meisten der Zusammenarbeit und Beteiligung der PHP-Entwickler heute ist. Ich habe auch die Frage auf Twitter Crowdsourcing, um Projekte, die ich nicht kannte fangen, und ich hoffe, das gleiche mit dir machen.

Andere Projekte in seiner Liste enthalten sind:

  • Symfony2 Komponenten
  • Moodle
  • Komponist und Packagist
  • Drupal, Joomla, WordPress

Haben Sie ein Projekt du, er vermisst? Lassen Sie ihn wissen!

PHPDeveloper.org

DZone.com: Social Vergleich von PHP Frameworks

In diesem Beitrag , um DZone.com heute John Esposito weist darauf hin, eine Website dass vergleicht populären PHP-Frameworks sozial , eine gemeinsame Ressource, um Dinge wie Rahmen Features, die Popularität und ihren Unterhalt last update.

Es gibt diesem Wiki-ish-Vergleich von PHP Frameworks aus socialcompare.com – derzeit unvollständig, aber schon mit ganz wenigen Rahmenbedingungen und interessante Details der einzelnen. Sie können Vergleichskriterien (Zeilen; folksonomically) oder aktualisieren Sie vorhandene Kriterien – derzeit gehören unter anderem Details ORM Besonderheiten, Cache-Speicher, Template-System und das Testen Bibliotheken.

Frameworks derzeit sind unter anderem Zend Framework, CakePHP, Fat-Free, Symfony, Yii und Kohana. So wie es jetzt steht, ist Yii die beliebteste Rahmen mit 8 Stimmen und Symfony und Zend Framework für die zweite mit 5 Punkten jeweils gebunden sind.

PHPDeveloper.org

Dzone.com: Zwei Symfony2 Bundle Repositories

Auf DZone.com John Esposito hat eine neue post-Sharing zwei Symfony2 Bundle Repositories Sie können uns auf Ihre Entwicklung Erfahrung mit den Rahmenbedingungen zu verbessern – KnpBundles und Symfohub.

Wenn Sie Symfony2 sind, wissen Sie bereits, dass der Rahmen „ Bundles verwendet ‚, das Äquivalent von Plugins, wenn der Kern als Plugin gezählt zu. (Der offizielle Dokumentation ruft Bundles „Bürger erster Klasse“ in Symfony2.) So weit so tolle Idee, aber ein Ökosystem hängt von einer Gemeinschaft, eine Gemeinschaft braucht eine Art von Organisation. Also, wie ist das Symfony2 Bündel Gemeinde organisiert und wie finden Sie bestehende Dritter Bundles?

KnpBundles bietet eine größere Ressource als Symfohub , aber beide haben praktische Funktionen, die Ihnen das finden was Sie suchen – Filterung, Suche Empfehlungen und Rankings.

PHPDeveloper.org

DZone.com: Writing Better PHP: Drei Guides

Auf DZone.com heute John Esposito hat etwa drei Leitfäden veröffentlicht , dass möchten Ihnen helfen, Ihre PHP-Entwicklung Fähigkeiten (einschließlich einem Forum und zwei Artikel).

Manchmal, dann verbessern Sie Ihre allgemeine „brain-Programmierung“ wird Ihnen helfen, Ihre Anlage mit einer bestimmten Sprache. Zu anderen Zeiten ist es umso wichtiger, die Nuancen einer Sprache zu lernen, aufmerksam auf die Art der Anwendungen die Sprache verwendet wird. […] Für die Verbesserung Ihrer PHP, dann können Sie zwei Dinge tun: ein besserer Programmierer, und verstehen, PHP feiner, tiefer.

Die Führungen teilen sich eine Menge von der gleichen Konzepte in common – Namenskonventionen, die Trennung von Funktionalität, DRY (don ‚ t Repeat Yourself), Test-Code, etc.

PHPDeveloper.org

DZone.com: Erstellen eines virtuellen Servers mit Vagrant: eine praktische Komplettlösung

Auf DZone.com gibt es einen neuen Beitrag Giorgio Sironi suchen, wie man automatisieren ein Build von einen virtuellen Server mit Vagrant , die Einrichtung eines LAMP-basierte Entwicklung Instanz.

Vagrant ia ein Werkzeug für die Erstellung von virtuellen Maschinen (in VirtualBox-Format), die zu einer Spezifikation entspricht. Es ist in Ruby geschrieben, aber es macht wirklich keine Annahmen über die Umgebungen, in denen du wirst bauen sind, in diesem Artikel werden wir einen virtuellen Server für PHP-Anwendungen laufen im Apache-Setup.

Das Endergebnis ist eine virtuelle Maschine auf VirtualBox Bilder und kann in wenigen einfachen Schritten gebaut werden :

  • installieren Sie den Landstreicher Edelsteine ​​auf dem Build-System
  • fügen Sie eine neue virtuelle Instanz box deutete auf einen. box Datei
  • erstellen Vagrant config (einschließlich der Befehle, um post-create run)
  • die Einrichtung eines kleinen Hafen forawrding
  • Erstellung eines phpinfo -Datei und starten Sie Apache

Man schlug vor Ort für die Aufnahme von Objekten (teilweise mit vordefinierten Software) ist BitNami ’s „Stacks“-Repository.

PHPDeveloper.org

DZone.com: Mit einer virtuellen Maschine mit mehreren Versionen von PHP spielen

Auf DZone.com Giorgio Sironi hat einen neuen post reden über eine Entwicklung der Praxis, dass mehr und mehr beliebt ist (statt der alten Standby einer Entwicklungsplattform für alle Entwickler) – mit virtuellen Maschinen als wiederverwendbare und leicht erneuerbare Plattformen . Er spricht über den Prozess er ging durch die Einrichtung PHP, einschließlich der Befehle während des Prozesses verwendet werden.

Dies ist eine Gelegenheit, über ein Virtualisierungs-Tool, das ich bin nicht vertraut mit, VirtualBox zu lernen. Ziel ist es, PHP 5.4, die noch nicht eine stabile Version zu spielen, um mit neuen Features wie Züge ohne sich zu ruinieren das Setup auf meinem Haupt-Maschine (die läuft super-stabil PHP 5.3) installieren. Obwohl es möglich sein kann, um sie zusammen laufen (ich bin kein Sysadmin), ist es wirklich einfacher, einen von ihnen in einer virtuellen Maschine, weg geworfen werden kann, wenn etwas schief geht, zu installieren.

Mit VirtualBox beschreibt er den Prozess der Einführung einer Ubuntu-System zum Laufen einschließlich einer benutzerdefinierten kompilieren von PHP mit Dingen wie Locke, bz2, mbstring und openssl zu unterstützen. Mit dieser installiert und der Apache-Pakete alle einzurichten, sollte es nur eine Frage des Schlagens Ihr localhost Web-Server sein. Wenn Sie älter (oder einfach nur andere) Versionen von PHP suchen, um zu kompilieren, lesen Sie das Historische Releases Seite über die PHP.net Website.

PHPDeveloper.org

DZone.com: Schließung Object Binding in PHP 5,4

In einen neuen Beitrag zu DZone.com Mitchell Pronschinske schaut Schließung Objekt binden in PHP 5,4-Anwendungen (ja, wir wissen PHP 5,4 nicht freigegeben wird noch). Er erklärt, was das ist eine zeigt einige Beispiel-Anwendungsfälle für Sie in Ihrer Entwicklung zu berücksichtigen.

Für die Leute, die PHP-NEWS-Datei zu lesen, ist es keine Überraschung – aber für alle, die hier nicht das ist wohl eines der größten Features von PHP 5.4: Closure Object-Support ist wieder da. Für mich ist es etwas, was ich vermisste die meisten, wenn Closures in PHP 5.3 eingeführt wurden. Also ich bin sehr glücklich, das ist endlich da (oder zurück). Ich werde Sie über den steinigen Weg, die Schließung Objekt verbindliche Unterstützung hatte erzählen und zeigen Ihnen einige einfache Anwendungsfälle dafür.

Die Funktionalität, auf Basis dieser RFC , können Sie mehr richtig binden Schließungen auf Objekte anstelle von mit dem Pass Objekte in den Verschluss zu schaffen Zeit. Er enthält ein Beispiel aus einem Silex Framework-Anwendung und ein Beispiel , dass refactors eine Hilfsmethode als Teil des Rendering eine einfache Vorlage.

PHPDeveloper.org

DZone.com: PHP 5.4 wird über einen integrierten Web Server

Wie in erwähnt diese neue post , um DZone.com, eines der Merkmale der kommenden PHP Version 5.4, einschließlich solcher Dinge wie Züge und Array-Dereferenzierung zu unterstützen, wird auch ein interessantes neues Feature – einen eingebauten einfachen Web-Server.

Ein weiteres neues Feature freuen in PHP 5.4.0 – die CLI SAPI wird nun eine integrierte Web-Server, der in Richtung Entwicklungs-Zwecke ausgerichtet. Es sollte nicht in der Produktion verwendet jetzt sein.

Das PHP Handbuch wurde mit den neuesten auf dieser bevorstehenden Funktion aktualisiert:

URI Anfragen aus dem aktuellen Verzeichnis, wo PHP anfing, war es sei denn, die Option-t wird verwendet, um eine explizite Document-Root angeben serviert. […] Wenn eine PHP-Datei auf der Kommandozeile angegeben wird, wenn die Web-Server gestartet wird, wird als „Router“-Skript für den Web-Server behandelt. Das Skript wird zu Beginn jeder HTTP-Anfrage laufen. Wenn dieses Skript gibt FALSE, wird die angeforderte Ressource ist wie er ist zurückgekehrt. Andernfalls wird der Skript-Ausgabe an den Browser zurückgegeben.

Die PHP 5.4.x-Serie ist noch im Beta ab dem Zeitpunkt dieser Beitrag – Sie können die beta1 auf dem Download-Bereich herunterladen der PHP-Website (oder der Windows-Binaries ).

PHPDeveloper.org

DZone.com: Phar: PHP-Bibliotheken mit einer einzigen Datei enthalten

Auf DZone.com heute Giorgio Sironi hat eine neue post Blick auf eine interessante, wenn auch selten verwendet, in den jüngsten Versionen von PHP – Verpackungen mit phar-Archive .

Phar ist ein php-Erweiterungen, die die Mittel für die Verteilung Code als ein einzelnes Archiv, das nicht über zu einem Ordner vor der Verwendung extrahiert werden zur Verfügung stellt. Das Konzept ist ähnlich wie JVM Jars: jedes Archiv wird ein virtuelles Verzeichnis, wo die Dateien zugegriffen werden kann. Allerdings ist der virtuelle Ordner nicht auf das Laden von Klassen beschränkt, sondern können Sie öffnen und lesen interne Dateien, als ob es decompresse wurden in ein Verzeichnis.

Er enthält eine kurze „Hallo Welt“ Beispiel für Verpackungen bis ein Skript in eine phar-Archiv und führt es über PHP. Er zeigt auch, wie einfach es ist, ein Archiv von aktuellen Code zu kreieren, um ein Archiv mit den neuesten Doctrine 2-Freisetzung für die einfache Integration ist. Phars erlauben auch Kompressions-und Hashing, hat aber Probleme mit der Ressourcenverwaltung und Zugriff auf externe Dateien.

PHPDeveloper.org