Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour à tous,
J'ai un souci, je vous explique :-)
J'obtiens apres un find()->current() un object de type Zend_Db_Table_Row_Abstract.
Je fais ensuite, tout bêtement un $Zend_Db_Table_Row_Abstract->feed_id et là le type de retour est int.
J'ai testé le type avec Zend_Debug::dump(), il n'y a aucun doute.
Je ne comprends pas comment est ce possible.
En théorie toutes les données de la base de données seront retournées en type string.
Je n'ai qu'un cas comme ca et il perssiste.
Avez vous une idée?
Merci d'avance.
Dernière modification par aikido (08-04-2009 16:24:37)
Hors ligne
Mais que fait The Police ?
Hors ligne
Pardon?
Hors ligne
aikido a écrit:
...seront retournées en type sting
Hors ligne
Oups pardon :-) c'est corrigé :-)
Des idées sur ce stRing... :-)
A oui, l'API indique bien un retour en stRing pour __get de la class Row_Abstract...
Dernière modification par aikido (08-04-2009 16:25:43)
Hors ligne
Hello,
C'est une erreur de l'API. La méthode ne fait qu'un :
return $this->_data[$columnName];
et pas un
return (string) $this->_data[$columnName];
A+
Hors ligne
Oui mais la base de données elle ne fait pas de convertion, donc d'où vient le cast ou la transformation?
De plus dans l'API, ce serait mixed et pas string dans ce cas non?
Dernière modification par aikido (08-04-2009 16:30:46)
Hors ligne
aikido a écrit:
Oui mais la base de données elle ne fait pas de convertion, donc d'où vient le cast ou la transformation?
PHP
aikido a écrit:
De plus dans l'API, ce serait mixed et pas string dans ce cas non?
Exact
Hors ligne
Tu me dis PHP, c'est le Row qui fait la modif? mais pourquoi cette fois ci et jamais ailleurs?
Hors ligne
aikido a écrit:
...
En théorie toutes les données de la base de données seront retournées en type string.
Heu non ???
pourquoi ?
si jusqu'ici php était plutôt laxiste sur le sujet
je trouve plutôt bien qu'enfin in remonte des données typées comme dans la base
j'imagine que ton feed_id est un integer dans ta base
donc c'est parfait
A+JYT
PS: je le soupçonne d'utiliser les métadonnées de la table pour remettre les choses au propre
jusqu'à présent il s'en moquait
Hors ligne
J'y ai pensé aussi sauf que ca ne me le fait que pour un seul champs!
Tous mes autres champs de type int, smallint ... sont retournés en string.
Hors ligne
bigre
ce n'est donc pas pour la 1.8
mais alors il y a anguille sous roche
le moteur php fais parfois des transformation mais il faut pour cela que ça devienne strictement necessaire
et là je vois pas
A+JYT
Hors ligne
Pages: 1