[SPL]SplFileInfo::setInfoClass()
Posté : 13 mars 2006, 15:56
Salut.
Quelqu'un a-t-il déjà utilisé la SPL pour les fichiers ??? J'essaye de comprendre comment les méthodes fonctionnent mais pour l'instant setInfoClass() et getFileInfo() me retournent cette erreur :
Dans la documentation, il demande un paramètre optionnel. Voici le prototype :
J'ai essayé de mettre le nom de la classe "SplFileObject" mais le résultat est le même.
J'ai ensuite regarder dans le code source de la SPL (le code en C). Ils font quelque chose que je ne comprend pas qui parait incohérent.
Si l'on regarde bien ce bout de code, et surtout le if () sur le zend_parse_parameters le deuxième paramètre ("|C") n'est pas dans la documentation de PHP (dans les sources, le fichier README.PARAMETER_PARSING_API).
Je vous demande votre avis avant de me lancer dans un report de bugs.
------------------------------
Pour information : PHP version 5.1.2
------------------------------
Quelqu'un a-t-il déjà utilisé la SPL pour les fichiers ??? J'essaye de comprendre comment les méthodes fonctionnent mais pour l'instant setInfoClass() et getFileInfo() me retournent cette erreur :
Code : Tout sélectionner
Warning: SplFileInfo::setInfoClass(): bad type specifier while parsing parameters
Code : Tout sélectionner
setFileClass (string class_name="SplFileObject")J'ai ensuite regarder dans le code source de la SPL (le code en C). Ils font quelque chose que je ne comprend pas qui parait incohérent.
Code : Tout sélectionner
/* {{{ proto SplFileObject SplFileInfo::setInfoClass([string class_name])
Class to use in getFileInfo(), getPathInfo(), getSubPathInfo() */
SPL_METHOD(SplFileInfo, setInfoClass)
{
spl_filesystem_object *intern = (spl_filesystem_object*)zend_object_store_get_object(getThis() TSRMLS_CC);
zend_class_entry *ce = spl_ce_SplFileInfo;
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|C", &ce) == FAILURE) {
return;
}
intern->file_class = ce;
}
Je vous demande votre avis avant de me lancer dans un report de bugs.
------------------------------
Pour information : PHP version 5.1.2
------------------------------