Traiter les arguments passés par référence <<< |
Assurer les autres paramètres contre l'écriture | Développer PHP 4.0 >>> |
8.9 Gestion des arguments 8 Développer PHP 4.0 Manuel PHP . Déterminer le nombre d'arguments . Lire les arguments . Ancienen méthode de lecture des arguments (obsolète) . Traitement des nombres d'arguments variables et des paramètres optionnels . Accéder aux arguments . Traiter les arguments passés par référence ->Assurer les autres paramètres contre l'écriture |
8.9.7 Assurer les autres paramètres contre l'écriture
Vous pouvez vous trouvez dans une situation oł vuos devez avoir accès à un paramètre qui a été lu par zend_get_parameters_ex mais pas passé par référence. Dans ce cas, vous pouvez utiliser la macro SEPARATE_ZVAL , qui effectue une séparation zval sur l'enveloppe fournie. La nouvelle enveloppe générée est détachée de sa représentation interne, et n'est valide que localement, ce qui signifie qu'elle peut être modifiée ou détruite dans implication au niveau global.
SEPARATE_ZVAL
utilise
emalloc
pour allouer une nouvelle enveloppe
zval
, ce qui signifie
que même si vous ne désallouer par la mémoire vous-même, elle sera
nettoyé dynamiquement lors de la terminaison du script. Cependant,
appeler souvent cette macro sans libérer votre RAM va fragmenter
votre mémoire vive.
Note: vous pouvez contourner facilement le manque d'accès dans la l'API traditionnelle (avec la fonction zend_get_parameters , etc...), mais cette API est obsolète et n'est pas détaillée dans ce chapitre. |
<< | Assurer les autres paramètres contre l'écriture | >> |
Traiter les arguments passés par référence | Gestion des arguments | Développer PHP 4.0 |