Je veux obtenir les informations de cookie stockées en utilisant la fonction setcookie dans le code source du php .. pas le code source php .. Quel est le code C correspondant à _COOKIE ['xx']; En d'autres termes, où est créé et rempli le tableau _COOKIE?_COOKIE Infos sur le serveur Côté
Répondre
La variable $_COOKIE
ne pas utiliser JIT (initialisation juste à temps), il est donc toujours accessible en lisant la table des variables globales EG(symbol_table)
:
zval **cookie_var;
if (zend_hash_find(&EG(symbol_table), "_COOKIE", sizeof("_COOKIE"),
(void**)&cookie_var) == SUCCESS) {
/* do something with cookie_var */
} else {
/* handle error; shouldn't happen */
}
Où devrais-je passer le nom 'views' ?? est la valeur de ** (cookie_var) = 'views'? –
@Kar Vous devriez faire une autre recherche de hash sur le tableau 'cookie_var':' zend_hash_find (Z_ARRVAL_PP (cookie_var), "vues", sizeof ("vues"), (void **) & my_var) ' – Artefacto
ok .. maintenant l'erreur de correspondance de char zval se produit .. Je suis nouveau à cette écriture d'extension. Alors pouvez-vous m'aider? Je sais que le nom de la variable est «vues» et il va être constant .. Donc, je ne dois pas obtenir de l'utilisateur .. –
Les informations sur les cookies font partie de vos en-têtes http (que le navigateur envoie). PHP facilite l'accès en les analysant dans un tableau net et en le mettant dans _COOKIE. Vous devrez le faire en C.
" code source du php "Huh:? – NullUserException
Je suggère de parler aux gens sur la liste de diffusion PHP Internals si vous êtes intéressé par l'exploration ou la modification de la source PHP: http://news.php.net/php.internals – leepowers
Etes-vous en train d'écrire une extension? – Artefacto