PHP-Developing-Tool von Claude aufgepeppt

Autor: Peter Bieling - 18.05.2026

In meinem PHP-Framewor PbClasses, gibt es - neben der Möglichkeit zum Loggen -auch eine kleine Klasse, mit der mit print_r() einfach Variablen für Debug-Zwecke angezeigt werden können.

<?php

namespace PbClasses;

class Develop {

    public static function test($wert, $zeile = "", $ex = 0) {
        echo "<hr>";
        if ($zeile) {
            echo "<b>Testausgabe: </b> Zeile: " . $zeile . "<hr>";
        }
        echo "<pre>";
        if (is_array($wert) || is_object($wert)) {
            print_r($wert);
        } else {
            echo $wert;
        }
        echo "</pre><hr>";

        //Wenn nach Test das Skript abgebrochen werden soll,
        //wird als dritter Parameter 1 übergeben
        if ($ex) {
            echo "<hr>";
            exit;
        }
    }

}

Dieses simple Werkzeug hatte aber oft den Nachteil, dass die Ausgabe auf der Seite durch die Darstellung von HTML-Elementen verdeckt wurde.

Ich habe daher Claude um Hilfe gebeten und dann innerhalb von einer Minute eine verbesserte Version erhalten.

Mein Prompt:

Update and extend this class with following requirements.
Modern PHP
Code with English variables and comments
phpDoc

Extension:
The generated output should be displayed in a draggable popover.

Das Ergebnis kann sich sehen lasse, wie ich finde.

In eine kleine Testanwendung habe ich drei Ausgaben eingefügt:

class AESTest1 {

    public function __construct() {
        $aesObj = new Crypt();
        $mystring = 'My Hello World Test';
        $encrStr = $aesObj->encrypt($mystring);

        $key = $aesObj->getKey();
        $iv = $aesObj->getIv();
        \PbClasses\Develop::test($aesObj, 'Crypt-Objekt ' . ' Zeile ' . __LINE__);
        \PbClasses\Develop::test($iv, 'IV-Wert ' . ' Zeile ' . __LINE__);
         \PbClasses\Develop::test($key, 'Key-Wert'.  ' Zeile ' . __LINE__);
         
         //...

Beim Start stehen die Popups mit Versatz übereinander, können dann aber mit der Maus an eine beliebige Stelle gezogen werden. Bei Bedarf können sie auch geschlossen werden, wobei das X zum Schließen für mich etwas zu unauffällig ist. Aber das kann ich ja leicht selbst - klimafreundlich - ändern.

Fazit

Der Beitrag soll zeigen, dass sich Claude gut dafür eignet, alten Quellcode zu modernisieren und zusätzliche Features zu integrieren.

Interessant finde ich immer wieder, dass die KI eigene Lösungsansätze entwickelt bzw. aus unklaren Formulierungen das Beste zu machen versucht. Ich hatte vorgegeben:

The generated output should be displayed in a draggable popover.

Meine Vorstellung war, dass der Output optisch aus der Seitendarstellung in einem einzigen Popup herusgehoben wird. Claudes Ansatz war dagegen, jede Ausgabe im eigenen Popup darzustellen. Mein Prompt kann durchaus so verstanden werden, dass jeda Ausgabe separat behandelt wird. Mir gefällt diese Lösung auch besser, so dass ich nichts ändern muss.

Auch die Möglichkeit, dem Popup einen Title mitgeben zu können, geht über meine Vorgabe hinaus. Die Idee finde ich gut.

Das Grafik-Design, das Claude verwendet, finde ich ansprechend. Der Darkmode ist vermutlich in den meisten Fällen nützlich, um sich besser von der übrigen Seitendarstellung abzuheben.

Zuletzt noch ein Blick auf die Modernisierung des PHP-Codes:
Auffallend ist, dass Claude sich an der Methode mit dem nichtssagenden Namen test() gestört hat und stattdessen inspect() eingeführt hat. (test() ist jedoch weiter als Alias verfügbar.) Alles übrige ist ebenfalls sauber in die Gegenwart übertragen worden.

Hervorheben muss ich noch, dass ich die kostenlose Claude-Version verwendet habe, und die in diesem Fall auch für ausreichend halte.

Web-Links

Den Quelltext von Claude kann man sich bei Github ansehen und herunterladen:
https://github.com/pbieling/pbclasses-min/blob/main/src/Develop.php

Das Framework PbClasses wird nicht benötigt, wenn man die Klasse für eigene Projekte verwenden möchte.

Bei Interesse am Framework finden Sie weitere Informationen im Beitrag Templates mit PHP ganz einfach

Information zum Weblog:

Peter Bieling beschäftigte sich beruflich von 2001 bis 2026 mit PHP und Webentwicklung. Privat engagiert er sich weiterhin in ehrenamtlichen oder Open-Source-Projekten.

Ab 1. April 2026 wird dieses Weblog privat betrieben.

Weitere Infos: p-bieling.de