Mailinglisten-Archive |
> Wenn Du mal den Source der beiden Funktionen in der zend_API.c > vergleichst, wirst Du sehen, daß die neue *Ex Funktion um ein ganzes > Stück kürzer geworden ist. Folgendes ist rausgeflogen: Korrekt, soweit war ich auch schon. > Frag mich nicht, was hier im Detail passiert... Wichtig scheint mir, daß Genau das war meine Frage. :) Die Funktionen ohne _ex basteln bei mit Referenzen übergebenen Parametern rum, indem sie die übergebenen Werte zuerst auf neue Speicherbereiche kopieren. Johann-Peter Hartmann vermutete, daß dies evtl. deswegen passiert, um die Variablen gegen versehentliche Änderungen zu schützen... ich habe das noch nicht überprüft, hört sich aber durchaus schlüssig an, da die neu erstellten Kopien der Variablen nichts mehr mit dem Original zu tun haben. Bleibt die Frage, ob bei einem Funktionsaufruf alle Variablen, die _nicht_ via Referenzen übergeben werden, automatisch auf temporäre Kopien gelagert werden. Ich denke, der Code wird in den alten Funktionen durchaus einen Sinn haben, sonst wäre er einfach rausgeflogen (ohne daß man einen komplett neuen Funktionssatz gebastelt hätte). Till
php::bar PHP Wiki - Listenarchive