![]() |
PHP Inspection Unit
Liste der Anhänge anzeigen (Anzahl: 3)
Hallo,
ich habe mich die letzter Zeit ein wenig mit regulären Ausdrücken beschäftigt. Daraus ist die folgende Unit entstanden. Mit ihr ist es möglich eine PHP Datei zu analysieren. Dabei werden Klassen und Interfaces mit deren Methoden und Variablen aufgelistet, sowie Methoden ohne Klassenbezug und eingebundene Dateien (über include, require, etc.). Ab Version 1.9 gibt es auch eine vollständige Unterstützung für Konstanten jeglicher Art (define oder PHP5-Klassenkonstanten). Das ganze wird hierarchisch in einer Klassenstruktur zusammengefasst. Die für Benutzer relevante Klasse sollte die Klasse TPHPSource in der Unit uPHPInspector.pas sein. Ihr wird beim Konstruktor der PHP Quelltext übergeben und daraus werden die Klassen etc. herausgeparsed. Die anderen Klassen in der Unit sollten nicht direkt instanziert werden. Die Verwendung der Eigenschaften der einzelnen Klassen sollte relativ einfach sein. Bei Rückfragen, bitte hier in den Thread schreiben. Zum Parsen verwende ich, wie gesagt, reguläre Ausdrücke. Da die native Delphi Bibliothek ![]() ![]() Neu ab Version 1.2: Es lässt sich nun eine Syntaxprüfung durchführen. Dazu muss man die Funktion SyntaxCheck der Klasse TPHPSource aufrufen. Dabei kann man zwischen reiner Syntaxprüfung und einer vollständigen Ausführung der Datei wählen. Bei der Syntaxprüfung werden nur rein syntaktische Fehler erkannt. Nicht vorhandene Include-Dateien oder undefinierte Funktionen werden nicht erkannt. Dazu muss der erste Parameter auf TRUE gesetzt werden. Im Zweiten Parameter "FileName" kann noch eine Datei zur Syntaxprüfung übergeben werden (Die Datei wird nicht automatisch von TPHPSource geparsed!) Wichtig beim Testen eurer Sources ist, dass ihr die <? und ?> nicht vergessen dürft, da die Syntaxprüfung ansonsten immer = TRUE ergibt (der Text wird dann einfach ausgegeben ohne geparsed zu werden). Zudem wird euer Source dann nicht vom PHP Inspector geparsed, wenn die PHP-Tags (<? .. ?>) fehlen (ab Version 1.6). Das Verhalten kann durch die StrictPHPTagCheck Eigenschaft beeinflusst werden. Im Anhang befinden sich nun:
Freue mich auf euer Feedback :) mfG mirage228 |
Re: PHP Inspection Unit
Es wäre cool, wenn das ding gleich noch die syntax checken würde ...
(Mit der php.exe und den parametern müsste das doch irgendwie gehe, oder ?) |
Re: PHP Inspection Unit
Zitat:
ja das wäre mit der php.exe möglich. Ich muss mich da aber erstmal reinarbeiten, dann sehe ich, was sich da machen lässt... mfG mirage228 |
Re: PHP Inspection Unit
|
Re: PHP Inspection Unit
Zitat:
mfG mirage228 |
Re: PHP Inspection Unit
Hi,
heute gibts schon das erste Update auf die Version 1.1 Mir ist ein Fehler in der Funktion CheckIsComment(), die prüft, ob ein angegebener Ausdruck von einem Kommentar umschlossen ist, aufgefallen. Der Fehler trat auf, wenn ein // - Kommentar vorlag. Ich habe den Fehler beheben können und die neue Version 1.1 steht im oberen Beitrag zum Download bereit. :) @jfheins: Den Syntaxcheck habe ich leider noch nicht einbauen können. Kommt aber bald :zwinker: mfG mirage228 |
Re: PHP Inspection Unit
Abend!
Heute gibt es wieder eine neue Version -> Version 1.2 Hier ist die Liste der Änderungen:
Die Verwendung der Syntax Prüfung ist optional. Die Dateien können auch ohne untersucht. Jedoch ist dann nicht sichergestellt, ob alle Ergebnisse korrekt sind. Nach dem Erstellen TPHPSource Klasse kann die Eigenschaft PHPExe gesetzt werden. Die sollte den vollständigen Pfad + Dateinamen der PHP.exe enthalten. Fehler in der Verarbeitung werden in der Eigenschaft SyntaxErrors dargestellt, die fertige Ausgabe von PHP (falls keine Fehler vorliegen), findet sich in der Eigenschaft OutPut. Man kann einmal nur die Syntax an sich testen (Parameter "CheckForRuntimeErros" = False; Standard) und einmal auch das Laufzeitverhalten (Parameter "CheckForRuntimeErros" = True). Nur bei letzterem kriegt man Meldungen von nicht gefunden Include-Dateien, nicht definierten Funktionen etc. Optional lässt sich auch ein Dateiname angeben, der dann überprüft wird. (Diese wird nicht automatisch vom PHP Inspector geparsed!). Ein ausführliches Beispiel findet sich in der Beispielanwendung :) Die Downloads im ersten Beitrag sind auch schon aktualisiert. Über Feedback würde ich mich freuen :) mfG mirage228 |
Re: PHP Inspection Unit
Abend,
heute gibt es wieder eine neue Version vom PHP Inspector. Es ist die Version 1.3. Neue Features sind unter Anderem:
Zudem habe ich noch einige Fehler in der Bestimmung der Index-Positionen behoben. Downloads findet ihr, wie gehabt, im ersten Beitrag. mfG mirage228 |
Re: PHP Inspection Unit
Guten Tag,
Mich würde jetzt interessieren wie schnell das ganze ist. Da ich selbst einen Parser geschrieben habe freut mich das projekt, nur zur Zeit schaut es so aus das dein Parser etwas langsam ist. Was dadran liegt das du immer den gesammten quelltext parst und dann das treeview immer wieder komplett neu erstelst. Was ich noch begrüßen würde ist das du den Parser so umprogrammierst das er beim neu parsen nur die neuen elemente hinzufügt und gegenfür nicht mehr vorhande entfern anstatt jedes mal das ganze neu zu erstellen. Das spart Zeit und zwar sehr viel. Habe es mal mit meinem Parser probiert. Ah und um noch mehr Zeit rauszuholen solltest du statt dem Treeview in der Beispielanwendung eine VirtualTree verwenden. Bringt wieder sehr viel Zeit. Könnte eventuel bei der umsetzung helfen. Wenn das alles erfüllt ist würde ich deinen Parser auch in meinem Projekt benutzen. Ansonsten ist das Teil hammer!!! Echt finde es klasse der funtkionsumfang ist sehr groß nur eben das mit dem speed stört mich. mfg, DSeven |
Re: PHP Inspection Unit
Hallo,
das Projekt ist sehr interessant und ich habe mir das Beispielprogramm mal heruntergeladen und mit ein paar größeren PHP Datein des phpBB2 Forensystems getestet. Bei der Datei "search.php" ~40Kb wurde die Datei zwar geladen, jedoch kam eine Fehlermeldung "Stack-Überlauf." und die Klassenstruktur blieb leer. Bei erneutem laden, kam die Meldung dann nicht mehr, jedoch bliebt die Klassenstruktur nun wieder, bis auf die Hauptpunkte leer. Bei der Datei "viewforum.php" ~20Kb wurde das Programm einfach ohne eine Meldung beendet. Vielleicht helfen dir die Infos bei der Fehlersuche. DSeven: Du lebts auch noch, von dir und deinem Editor habe ich schon länger nichts aktuelles mehr gehört ;) MfG Pr0g |
Re: PHP Inspection Unit
Hi,
Danke erstmal für euer Feedback. :) @DSeven: Ich werde mal schauen, wie sich das am besten realisieren lässt, um nur die Unterschiede in der Datei zu berücksichtigen. Das ist auf jeden Fall eine gute Idee! Ich hatte auch erst überlegt ein VirtualTreeView in die Beispielanwendung zu packen, aber es ist nur eine Beispielanwendung, die jeder "mal eben so" kompilieren und leicht nachvollziehen soll. Optimale Geschwindigkeit war nicht in erster Linie das Ziel des Beispielprogrammes. Aber mit einem VirtualTreeview wäre es natürlich schneller und besser - aber leider hat nicht jeder das VirtualTreeview :-( @Pr0g: Ja, das habe ich gestern auch feststellen können. Der Stacküberlauf wird von der verwendeten PCRE.pas verursacht undzwar bei dem Pattern der CheckIsCommented() funktion, wo auf Kommentare oder Strings geprüft wird. Ich werde das nochmal genauer unter die Lupe nehmen... mfG mirage228 |
Re: PHP Inspection Unit
Hi,
so die neue Version ist fertig (Version 1.4) Ich konnte das Problem mit EStackOverflow behoben. Der eine RegEx beim Prüfen von Kommentaren war "fehlerhaft" und verursachte den gennanten Fehler. Auch habe ich die Erkennung von Kommentaren stark optimiert. Anstatt bei jedem Durchlauf den gesamten Quelltext erneut nach Kommentaren zu parsen, werden nun alle Kommentare am Anfang der Analyse im Vorraus bestimmt (neue Klassen TPHPComment und TPHPComments) Bei meinem Test (viele Klassen mit schön viel Kommentar :) ) kam ich auf das Ergebnis von ~640ms (jetzt) gegen ~16500ms (alt) für das Analysieren des Codes. Ich werde aber noch versuchen bzgl. Speed etwas mehr rauszuholen. Das Darstellen im TreeView habe ich nicht mit eingeschlossen, da das etwas länger dauern könnte. Als Lösung kann ich empfehlen, wie bereits vorgeschlagen wurde, das VirtualTreeView von Mike Lischke zu verwenden. Um jedoch so wenige Zusatzkomponenten wie möglich voraussetzen / mitliefern zu können, findet sich im Beispiel ein normales "TreeView" (sollte für Testzwecke aber ausreichend sein). Aber erstmal viel Spaß mit der neuen Version! (Downloads, wie gehabt, im ersten Beitrag) :) mfG mirage228 |
Re: PHP Inspection Unit
Zitat:
Erstmal läuft der gesammte Parser in einem Thread. Ich parse eigentlich auch immer die gesammte Datei :D (deshalb verwirkliche ich es ja nur zur helfte) aber ich überprüfe beim erstellen des Trees (VirtualTreeView) ob es den Eintrag bereits gibt, wenn ja überspringe ich den eintrag und gehe zum nächsten. So muss ich nur neue einträge erstellen anstatt das gesammte Tree erneut zu erstellen. Bringt finde ich erheblich viel Zeit. Ich versuche zur Zeit den Parser so umzustellen das er nur nach änderungen im Quelltext sucht was aber nur teilweise funktioniert. Es Funktioniert nur dann wenn man auch die Editor Kompo dem entsprechend umprogrammiert. So das sie sich merkt was geändert wurde. Also ziemlich kompliziert. Aber eigentlich lässt sich die benötigte Zeit auch beim erstellen des TreeViews rausholen finde ich. Teste die geschwindigkeit deines Parsers am besten gegenüber anderen Produkten wie phpEdit. Obwohl der auch sehr langsam ist. @Pr0g: Arbeite gerade am Stable release :D mfg, Nexis |
Re: PHP Inspection Unit
Hi,
ich habe auch versucht zu implementieren, dass wirklich nur unterschiedliche Methoden etc. geparsed werden. Um aber zu untersuchen, dass was geändert wurde, musste ich schon fast das ganze Parsing einmal erledigen, was das ganze Prozedere ca. 1,5x langsamer machte. Ich hab gestern noch das im Netz gefunden: ![]() Das sieht ganz brauchbar aus - jetzt muss ich nur schauen, wie sich das auf den Speed auswirkt. Ich hab nämlich das Gefühl das bei kürzeren Sourcen der komplette Neuaufbau am schnellsten ist. Ich werde mir heute aber dann erstmal phpEdit anschauen und ihn mit meinem Parser vergleichen :) Danke für die Tipps :) mfG mirage228 |
Re: PHP Inspection Unit
Hi,
ich habe heute den Quelltext noch einmal so optimiert, um auch ohne Text-Differenz mehr rauszuholen. Daraus resultiert die neue Version 1.5 :) Dabei habe ich folgendes gemacht:
Insgesamt konnte ich eine Geschwindigkeitserhöhung von teils über 20% (variiert nach oben und unten - je nach Source) herausholen! Aber das mit der Text-Differenz werde ich mir auf jeden Fall noch ansehen @DSeven. Downloadlinks, wie gehabt, im ersten Beitrag! mfG mirage228 |
Re: PHP Inspection Unit
Gibt es irgend eine Möglichkeit die Unit ohne Beigabe der Dll nutzen zu können. Durch eine andere Lib, oder sonstwas?
MfG Pr0g |
Re: PHP Inspection Unit
Guten Tag,
Also ich habe heute einen Test mit deinem Parser 1.3 gemacht und einer Datei mit 410 Kb. Es befinden sich da verschiedene Klassen und ein paar variablen und Funktionen. Dein Parser hat 30 Sekunden gebraucht meiner 132 ms. ALso du siehst du must noch einiges machen. PHPEdit hat nur zwei sekunden mehr gebraucht. OK mein Parser part nicht so viele sachen wie deiner, aber der von phpEdit schon also solltest du dich am speed von PHPEdit orientieren. mfg, Nexis |
Re: PHP Inspection Unit
Zitat:
wenn Du mir eine Lib nennen kannst, die PCRE vollständig unterstützt und ohne DLL auskommst, dann wäre das möglich. :) Das Problem mit TRegExpr (native Delphi) z.B. ist das einige PCRE Befehle nicht unterstüzt werden (Modifier /R für Rekursion z.B.). Aber ich denke, dass die 200KB der PCRE.dll nicht viel ausmachen... Zitat:
Das hatte ich in der Version 1.4 verbessert. Damit kam ich auf einen Geschwindigkeitszuwachs von ~16000ms auf ~640ms in meinem Testbeispiel. Mit der Version 1.5 von gestern sollte es noch schneller gehen. Weisst du zufällig auch, wo ich eine dementsprechend große PHP Datei herbekomme? Die größte, die ich hier habe ist ~75 KB. Dann werde ich mir heute mal phpEdit runterladen und vergleichen... Danke nochmal für euer Feedback :) mfG mirage228 |
Re: PHP Inspection Unit
Guten Tag,
Wow die Version 1.5 brauch für das erste parsen nur ~900 ms und beim zweiten mal gehts noch viel viel schneller. Also das ist perfekt für den gebrauch. Ich glaube da brauchst du nicht mehr viel zu optimieren. Weil es eigentlich genauso wenn nicht schneller ist als bei PHPEdit so viel ich weis. PHPEdit parst die 450 KB große Datei nicht mal :D Also die Datei habe ich mir selber zusammengestellt. Einfach eine klasse genommen die mir gefällt und immer wieder hintereinander rein kopiert. So teste ich meinen parser immer :D Naja ok werde meinen Parser im Programm durch deinen ersetzen weil deiner PHP 5 Support hat und schneller ist. Muss das ganze nur noch auf VirtualTree umstellen und in einen Thread packen. Echt klasse dein Parser hoffe das du weiter dran arbeiten wirst!!!! @Edit: währe es eigentlich möglich ohne viel Zeit zu verlieren auch Variablen zu parsen die keinen klassen bezug haben wie in PHPEdit? Währe das letzte Feature was ich vermisse. PHPDoc support währe auch klasse. mfg, DSeven |
Re: PHP Inspection Unit
Zitat:
|
Re: PHP Inspection Unit
Guten Tag,
So habe bei mir das ganze auf VirtualTree umgestellt hier die Speed Ergebnisse: 400~ KB Datei: VirtualTree: 50~ ms TreeView: 1400~ ms Also ist deutlich. Also dein Parser ist schon gut, aber wenn du noch mehr optimieren könntest würde ich mich freuen. Aber für den normalen gebrauch ist es natürlich schon mehr als geeignet. PS: Und das mit dem genauso schnell wie PHPEdit nehme ich zurück. Dein Parser ist viel schneller. Habe es mit der 400 KB Datei getestet. PHPEdit: 1 Minute und 40 Sekunden Deiner: 900~ ms Also PHPEdit kan einpacken. Obwohl PHPEdit weniger parst. Zum Beispiel parst es keine Interaces. Und public, private und so weiter interessiert den auch nicht. Ich glaube aber eher das liegt dadran das er noch variablen parst und das brauch zeit. mfg, DSeven |
Re: PHP Inspection Unit
Guten Tag,
Habe zwei Fehler im Parser gefunden. Währe nett wenn du sie beseitigen könntest: 1. Wenn ich folgenden Text in einer Datei stehen habe: remember to include detailed reproduction steps and a stack trace if you have one. You can also submit other feedback; Dan parst er ihn und fügt einen eintrag ins Treeview ein das er eine include gefunden hat die dann bis zum ; Symbol geht. 2. Es währe nett wenn dein Parser nur PHP Code parsen würde. Also erstmal prüft ob das was er parst in den Tags <? ?> drin ist. Ah und noch ein kleiner Verbesserungsvorschlag: Ich fände es ziemlich geil wenn du bei klassen, funktionen und interfaces noch zwei Variablen machst. StartBracket und endBracket oder so. Die mir die Position von den Klammern sagen. Hoffe ich nerve dich nicht alzusehr. mfg, DSeven |
Re: PHP Inspection Unit
Hi,
erstmal Danke für das positive Feedback bzgl. der Geschwindigkeit :) Nun zu deinen Fragen / Wünschen ;): Zitat:
ich kann versuchen das einzubauen. Wie sich das aber auf die Geschwindigkeit auswirken wird, kann ich dir im vorraus nicht sagen... Zitat:
Zitat:
Das war für mich am einfachsten, da ich sonst alle Fälle hätte durchlaufen müssen (mal mit Klammer, mal ohne, mal mit Anführungszeichen, mal ohne. Dann werde ich mir diesbezüglich was einfallen lassen... Zitat:
(Ließe sich damit evtl. auch Problem 1 lösen?) Zitat:
Dann muss ich halt schauen, wie sich das ganze auf die Geschwindigkeit auswirkt - aber extreme Verluste wird es wohl nicht geben. Zitat:
mfG mirage228 P.S.: Zitat:
|
Re: PHP Inspection Unit
Zitat:
Zitat:
Man kann ja mit PHPDoc zum Beispiel beschreibungen für Funktionen erstellen. Und der parser sollte der funktion dann diese Beschreibung hinzufügen. Zitat:
Also das wichtigste für mich ist erstmal eigentlich das er nur ziwschen den Tags <? ?> parst. Das ist mir sehr wichtig, das andere ist nicht so wichtig. mfg, DSeven |
Re: PHP Inspection Unit
Ich kenne mich mit regulären Ausdrücken nicht so gut aus, hier mal ein Link:
![]() Vielleicht kannst du dir den Link mal angucken und mir sagen, ob deine Unit damit funktionieren könnte. Falls ja, du aber bei deiner Dll Variante bleiben willst, kann ich versuchen deinen Code auf die Komponente umzuschreiben? |
Re: PHP Inspection Unit
Zitat:
Danke für Deinen Mühen. Leider ist die Komponente kommerziell und selbst die "Freeware" Version hat eine sehr nervige Einschränkung: :? Zitat:
[edit]Wenn Du diese, oder eine andere, Komponente benutzen möchtest, kannst Du die Unit ruhig umbauen :)[/edit] mfG mirage228 |
Re: PHP Inspection Unit
Oh, dass sie kommerziell, bzw. mit Popup ist habe ich nicht gesehen, in diesem Fall kommt sie für mich auch nicht in Frage.
|
Re: PHP Inspection Unit
Hi,
also ich wollte euch heute mal über den "Zwischenstatus" informieren. Also ich habe mal testweise implementiert, dass der Body der Funktionen auch geparsed wird, sodass man schauen kann, wo die Brackets anfangen und aufhören. Leider hat das bei diesem Versuch die Parsing Zeit meiner "Massendatei" (760 KB) von ~3500 ms auf ~6500 ms hochgejagt. Da werde ich mir noch etwas überlegen müssen. Ich baue daher in eigenen Klassen einen privaten Konstruktor ein, dem ich bereits fertige IMatch Ergebnisse übermitteln kann, sodass das nicht erneut in der DetermineEntityName() erledigt werden muss. Derzeit bin ich auch noch dabei die Unterscheidung für <? ?> zu machen, damit man auch HTML Dokumente mit eingebettetem PHP richtig parsen kann. :) Also am Wochende sollte das ganze das fertig sein (hoffe ich :mrgreen:) mfG mirage228 |
Re: PHP Inspection Unit
Guten Tag,
Das hört sich ja gut an, hoffe das du es schafst. Freue mich schon auf den neuen release. Vor allem wegen <? ?> :D mfg, Nexis |
Re: PHP Inspection Unit
Guten Tag,
Ich hätte noch einen Verbesserungsvorschlag für deinen Parser: Erstelle eine Klasse für die Includes die du von TPHPEntity ableitest. Die klasse muss eigentlich nichts enthalten ich will nur überprüfen können ob es sich um ein Include handelt zurzeit geht das ja nicht. Ich meine wenn ich auf ein Node im CodeBrowser zugreife. Währe ganz nett wenn du das einbauen könntest. Ich wollte das eigentlich selber machen aber dann müsst ich bei allen deinen neuen Version immer wieder dieses Feature selber einbauen. Deshalb ist es besser wenn du es selber zum Standart machst. Es geht hier nur um die Bequemlichkeit, Zeit kostet das ja nicht. mfg, DSeven |
Re: PHP Inspection Unit
Abend,
so die neue Version (1.6) ist nun fertig. Hier ist der Changelog:
In der/den nächsten Version(en) wird es noch PHPDoc Support geben (mal schaun, wie sich das machen lässt) und ich werde versuchen Variablen im Source erkennen zu lassen. Downloads gibts, wie gehabt, im ersten Beitrag :) mfG mirage228 |
Re: PHP Inspection Unit
Guten Tag,
Danke für den neuen Release. Aber wie es aussieht hast du ihn vorher nicht getestet? Ich bekomme wenn ich den Namen einer funktion abrufe nicht den Namen sondern alles samt body. Außerdem wenn ich über den Schalter das mit dem Body einlesen abschalte bekomme ich ein paar fehler das variablen fehlen und so. Solltest einen Bug Fix machen. ah und noch was bei meinen Interfaces liest er jetzt nicht mal die funktionen ein. mfg, DSeven |
Re: PHP Inspection Unit
Zitat:
oh, sorry, das sind mir wohl ein paar Fehler unterlaufen :oops: Einmal hatte ich den Schalter falsch herum gemacht und einmal hatte ich in einem Konstruktor (bei deaktiviertem Schalter) den ersten Parameter vergessen. Das mit den Interfaces war ein kleiner Folgefehler, der zu Folge hatte, dass der Text bereits in einem übergeordnetem Konstruktor gesetzt wurde, ohne dabei jedoch zu parsen. Und beim Setzen über die property hat das dann nicht funktioniert, weil die Texte ja "gleich" waren. Ich hab das mal gelöst, indem beim Konstruktor von TPHPClass auf jeden fall ParseEntity aufgerufen wird. Das mit dem Abrufen des Funktionsnamen konnte ich nicht nachvollziehen. Bei mir gibt TPHPMethod.Name immer einen korrekten Wert zurück :gruebel: Auf jeden Fall sind die Fehler behoben :) - Downloads gibts gleich ab sofort im ersten Beitrag mfG mirage228 |
Re: PHP Inspection Unit
Zitat:
Danke für den schnellen Fix. Ja und das mit den Funktionen hast du recht :) Ich habe statt Name immer Occurence benutzt :) Also mein fehler. mfg, DSeven |
Re: PHP Inspection Unit
Guten Tag,
Also wenn der {$DEFINE PARSEMETHODBODY} Flag gesetzt ist zeigt er mir die Interface funktionen nicht an, wenn er nicht gesetzt ist werden sie angezeigt. mfg, DSeven |
Re: PHP Inspection Unit
Zitat:
bei mir werden Interface Funktionen in jedem Fall erkannt. :gruebel: Wie sieht denn Deine Deklaration aus? Ah, hab den Fehler! Der sucht versehentlich nun auch bei Interface nach den {} ! mfG mirage228 |
Re: PHP Inspection Unit
Hi,
so das ist nun auch behoben. :) Ich habe mal ein paar Beispiele aus der PHP Doku ausprobiert und es scheint wirkich alles zu gehen :) Die aktualisierten Downloads befinden sich im ersten Beitrag ;) mfG mirage228 |
Re: PHP Inspection Unit
Guten Tag,
Ja jetzt geht es wirklich. Habe aber nebenher was neues gefunden was zu bemengeln ist. Undzwar parst dein Parser nur Code der zwischen <? ?> steht aber es gibt durchaus programmierer die nur einen anfangs Tags <? setzen und denn ende Tag nicht und mich würde es freuen wenn er alles nach <? parst auch wenn der Tag nicht geschlossen wurde. mfg, DSeven |
Re: PHP Inspection Unit
Zitat:
Na, dann werde ich das noch einbauen - in Form eines Parameters, wie "StrictPHPTagCheck" oder so. mfG mirage228 |
Re: PHP Inspection Unit
Abend,
so ich habe in der neuen Version 1.7 noch ein paar Dinge ergänzt - neben Deinem Vorschlag, DSeven ;) Was sich geändert hat:
Ich habe diesmal etwas ausführlicher getestet, um Fehler zu vermeiden. Falls ich doch noch Fehler gemacht haben sollte -> Immer her damit :mrgreen: Downloads gibts, wie immer ;), im ersten Beitrag. mfG mirage228 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:10 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz