Retourner au contenu associé (entrée de forum : Typage des paramètres d'une fonction)
Posté par santos le 19 novembre 2008 à 13:56. En réponse au message Typage des paramètres d'une fonction. Évalué à 2.
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
# Ma solution
Posté par santos . En réponse au message Typage des paramètres d'une fonction. Évalué à 2.
Si un paramètre de méthode est de type simple, je ne spécifie pas son type dans le prototype de la méthode :
public function plop($str)
Par contre en début de méthode je vérifie le type du paramètre :
Utils::checkType('string', $str);
Compatible avec n'importe quel type simple ou classe utilisateur ; déclenche une exception si le type de la variable fournie n'est pas celui attendu.
Inversement, si un paramètre de méthode est une instance de classe (système ou utilisateur), je spécifie la classe attendue dans le prototype :
public function plop(MonType $object)
Par ailleurs, je peux récupérer le type d'un paramètre :
Utils::getParameterType(ReflectionParameter $param);
Si $param est de type simple, la méthode retourne null ; sinon, elle retourne le nom de la classe correspondante.