Warum typecasting ist nicht eine option in der PHP-Funktion Parameter

Mag dies wie eine dumme Frage für viele von Euch, aber es hält mich Fragen, warum PHP nicht erlauben typecasting in seiner Funktion Parameter. Viele Menschen verwenden diese Methode, zu werfen in den Parametern:

private function dummy($id,$string){
    echo (int)$id." ".(string)$string
}

Oder

private function dummy($id,$string){
    $number=(int)$id;
    $name=(string)$string;
    echo $number." ".$name;
}

Aber mit Blick auf die vielen anderen Programmiersprachen, Sie akzeptieren typecasting in Ihrer Funktion Parameter. Aber dies zu tun, in PHP kann zu Fehlern führen.

private function dummy((int)$id,(string)$string){
    echo $id." ".$string;
}

Parse error: syntax error, unexpected T_INT_CAST, in der Erwartung, '&' or T_VARIABLE

Oder

private function dummy(intval($id),strval($string)){
    echo $id." ".$string;
}

Parse error: syntax error, unexpected '(', expecting '&' or T_VARIABLE

Will nur wissen, warum dies nicht funktioniert, und wenn es einen Weg gibt. Wenn es keinen Weg gibt, dann werde der reguläre Weg ist okay für mich:

private function dummy($id,$string){
    echo (int)$id." ".(string)$string;
}
InformationsquelleAutor Death.System | 2012-07-13
Schreibe einen Kommentar