Si vous vous êtes un tant soit peu renseigné sur la sécurité des applications web écrites en PHP (et c'est valable pour les autres langages de toute façon), vous savez surement qu'un des points primordiaux est la validation des données. Cette validation peut s'avérer très fastidieuse si on s'y prend mal. Je ne rentrerais pas ici dans les détails d'une validation de données sûre et pratique, je dirais juste qu'en utilisant le type casting (c'est à dire la convertion à la volée de type de variables), on peut valider quelques types de données.

Exemple: vous avez une fonction (appelons la __construct, dans une classe donc) qui attend en argument un entier (__construct($id) par exemple). Pour valider $id, vous pouvez tout simplement faire:

$this->id = (int) $id;

Et voilà. Quiconque tentera de passer, par exemple, une chaîne de caractère visant à exploiter une faille XSS perdra son temps, puisque la chaîne sera automatiquement convertie en entier.