Übersicht über alle offenen Resourcen
flashnfantasy
- php
0 wahsaga
Überarbeite gerade ein ältere PHP-Programm mit einer Unmenge von mySQL - Queries.
Um zu testen, ob ich bei allen Queries bis zu einem bestimmten Punkt ein mysql_free_result gemacht habe würde mir eine Übersicht über alle offenen Resourcen helfen.
Ist sowas in PHP möglich ?
Gruß,
Flash
hi,
Um zu testen, ob ich bei allen Queries bis zu einem bestimmten Punkt ein mysql_free_result gemacht habe würde mir eine Übersicht über alle offenen Resourcen helfen.
Ist sowas in PHP möglich ?
Eingebaut gibt es da m.W. nichts.
Was möglich wäre, wäre get_defined_vars() und is_resource() entsprechend zu kombinieren - aber damit findest du natürlich nur alle die Ressourcen, die auch einer Variablen zugewiesen wurden.
gruß,
wahsaga
hi wahsaga,
funktioniert leider nur innerhalb einer Umgebung (sprich Function oder Class) und dann dort auch nur für die Variablen dieser Umgebung, globalen Variablen und System-Variablen.
Damit wäre ich aber wieder fast bei dem Durchsuchen mit der Hand.
Gruß,
Flash
hi,
funktioniert leider nur innerhalb einer Umgebung (sprich Function oder Class) und dann dort auch nur für die Variablen dieser Umgebung, globalen Variablen und System-Variablen.
Und welche Art von Variablen bleibt dann noch übrig?
gruß,
wahsaga
hi wahsaga,
Und welche Art von Variablen bleibt dann noch übrig?
wenn du alle interessanten Variablen, also die mit einer Resource, global machst, dann bleiben keine Variablen übrig.
Nur dazu müsstest du überall dort, wo eine Query in einer Function steht, die zugehörige Resource als global kennzeichnen.
Zudem müsstet du sicherstellen, daß alle globalen Variablen einen unterschiedlichen Namen haben. Und für jede Resourcen-Variable einen Test schreiben. Natürlich könntest du das eleganter machen mit einem Array. Letztlich, du musst trotzdem alle Ressis erstmal suchen.
Bei allen Betrachtungen bin ich jetzt fast soweit, daß ich eine eigene generelle programmtechnische Lösung suche.
Mit der Lösung will ich zB auch sporadische Langläufer unter den Queries erfassen (was ja mein eigentliches Problem ist).
Gruß,
Flash