Googles Browser Chrome und dessen Chromium Projekt werden immer beliebter. War es anfangs in erster Linie die Geschwindigkeit, so sind auch die Erweiterungsmöglichkeiten weiterhin in den Fokus der Nutzer geraten und der Markt ist voll mit sinnvollen Erweiterungen.
Natürlich gibt es auch im Rahmen der Webentwicklung viele Erweiterungen, die im Vorfeld dem Firefox in Webentwicklerkreisen zu Bekanntheit verholfen haben.
Im Bereich der PHP-Entwicklung habe ich mir immer wieder diverse Lösungen angeschaut, mit verschiedenen Möglichkeiten gespielt und am Ende sitze ich in erster Linie vor einem Browser, der IDE, XDebug und diverse eigene Erweiterungen. Unter Firefox habe ich FirePHP in bestimmten Bereichen gern genutzt, kleines Plugin dazu findet man im zugehörigen Beitrag. Alternativ habe auch die debugConsole vorgestellt. Daher lag es nahe sich im Umfeld Chromium nach einer Lösung umzuschauen und die Entwicklertools aktiv im Rahmen PHP zu nutzen. Dabei wird man in verschiedenen Themen fündig und ich möchte hier php-console vorstellen und eine kleine Integration für WordPress als Plugin aufzeigen.
PHP Console is extension for Lagger and class PhpConsole, that displays PHP errors/debug messages in Google Chrome console and in notification popups.
Die Aussage trifft es im Grunde auch und bei der ersten Arbeit mit der Erweiterung für den Browser und nach Integration der Klasse sieht man die Ergebnisse sehr schön.
Das Inkludieren der Klasse habe ich via Plugin gelöst, kann natürlich auch statisch in den notwendigen Stellen der entsprechenden Dateien erfolgen.
Über alle Features der Erweiterung kann man sich umfassend auf der Projektseite umsehen; ebenfalls Dokumentationen und Download ist dort zu finden.
Im folgenden einige Einblicke in die Ausgabe und vielleicht macht es Lust auf einen ersten Test oder auch mehr.
Im ersten Screenshot seht ihr die Ausgabe der PHP-Fehler, die in der Console ausgegeben werden, diese kann man gleichzeitig nach dem Load der Seite als Popup bekommen, siehe letzer Screenshot. Dazu gibt es via Kontextmenu diverse Einstellungen der Erweiterung.

Alternativ eine Ausgabe im Log, welche ich via Plugin explizit als Beispiel erzeugt habe. So ist es möglich, dass ihr eure Ausgabe steuert.

Im letzten Screenshot ein Gesamtüberblick, inklusive der popups - man hat eine sehr schöne Ausgabe aller PHP Meldungen und sollte so beim Entwickeln nichts vergessen.

Im folgenden mein kleines Plugin (alternativ bei Github zum Download inkl. aller Dateien und Ordner), wobei ich die Klasse PhpConsole.php der php-Console im Ordner inc ablege. Die Ausgabe im Log der Konsole wird über die Funktion debug() gesteuert; dabei ist es möglich, dass man einen Namen mitgibt und so die Auswertung leichter lesen kann.
<?php
/*
Plugin Name: php-console
Plugin URI: http://bueltge.de/
Text Domain: php-console
Domain Path: /languages
Description: <a href="http://code.google.com/p/php-console/">php-console</a> - Google Chrome extension for displaying PHP errors/exceptions/debug messages in browser console or notification popups
Author: Frank Bültge
Version: 0.0.1
Author URI: http://bueltge.de/
Donate URI: http://bueltge.de/wunschliste/
License: GNU v3
Last change: 29.03.2011
*/
/* load php-console functionality */
require_once( 'inc/PhpConsole.php' );
PhpConsole::start( TRUE, TRUE, dirname(__FILE__) );
class Wp_Php_Console {
public function __construct() {
$this->messages();
$this->get_contents( 'GNU GENERAL PUBLIC LICENSE' );
}
public function messages() {
global $wpdb, $pagenow;
debug( $pagenow, 'Var Pagenow' );
$sql = "SELECT * FROM $wpdb->options";
debug( $sql, 'sql-options' );
}
public function get_contents( $string ) {
$content = file_get_contents( '../license.txt', NULL, NULL, 0, 100 );
$pos = strpos( $content, $string );
debug( $pos , 'Position' );
if ( ! $pos )
debug( $content, 'Content' );
}
}
new Wp_Php_Console();
?>
Hallo, klingt interessant. Das Modul lässt sich bei mir leider nicht aktivieren. Es gibt folgende Fehlermeldung:
Parse error: syntax error, unexpected T_STATIC in /var/www/wordpress/wp-content/plugins/bueltge-php-Console-for-WordPress/inc/PhpConsole.php on line 249Viele Grüße Christian
@Chris: tausche mal die Dateien im Ordner inc mit der neuen Version aus, vor wenigen Stunden erschienen - auf github werde ich das in den Tagen tun.
Bei mir auch ein Parse error und nun?
@DJ Set: auch die anderen Kommentare lesen und die Datei mit der neuen Version austauschen.
@Frank: Danke. Ich probiere die neue Version in den nächsten Tagen aus.
Ich las darüber bereits in einem anderen Blog und bekam ebenfalls immer einen Parse-Error. Schön dass der Kommentar weiter oben das Problem bei mir behoben hat. Nun funktioniert es endlich!
Danke, werde das Plugin heute Abend ausprobieren
Ich mag dieses Plugin, es ist perfekt funktionieren
Ich muss ja sagen, ich habe mich sehr lange vor Chrome gestreubt...
so wie ich lange vom Iphone wegbleiben wollte...es hat beides nicht geklappt...nun fuchse ich mich erst langsam da durch und finde nach und nach immer interessantere Plug-ins ;D da ich einen neuen Blog anfangen will ist das jetzt gerade besonders interessant für mich, werde es aber wohl erst am WE testen können...bin gespannt ^^
Hi Frank, ich bin auch gerade erst auf Chrome umgestiegen, weil der neue Firefox bei mir extrem langsam ist. (warum auch immer). Werde den Debugger auch mal ausprobieren.
Bei den Firefox Extensions fehlt mMn noch Firebug, auch ne ziemlich gute FF Extension für Webentwickler. Leider ist da PHP Support nicht mit drin, aber mit http://www.firephp.org/ kann man das noch mit integrieren!
hi frank,
mir viel gerade auf, du hast beim letzten bild in diesem beitrag einen tippfehler im link.
"pphp-console-wp-frontend.png", da ist ein "p" am anfang doppelt..
das wars auch schon, weiter machen!!
gruss, uli
@uli: vielen Dank! gefixt.