J'ai une colle pour vous, est-ce que vous savez ce que donne ce code sous PHP 5.2 ?
$foo = (binary) 3;
var_dump($foo);
Si vous repondezCode : Tout sélectionner
string(2) "11"Code : Tout sélectionner
string(1) "3"Son inclusion dans PHP 5.2.1 m'avait échappée et je pensais que l'idée avait été abandonnée, mais il semblerait bien que l'opérateur de transtypage (binary) ait été rétroporté de PHP 6. (mais toujours pas de clavicogyres en vue) Et au cas où vous ne soyez pas déjà familier, il sert à indiquer qu'une chaîne est de type binaire. Il faut savoir que sous PHP 6 il existe une distinction entre les chaînes représentant du texte et celles représentant des données binaires (le contenu d'un fichier image, par exemple) et le résultat de certaines fonctions peut s'en trouver modifié. Sous PHP 6, on a donc deux types de données différents : (string) et (binary). Sous PHP 5, (binary) n'est qu'un synonyme de (string) mais il permet dès aujourd'hui d'assurer la compatilibité ascendante de ses scripts. Enfin, on est pas pressé non plus, hein.
À noter également, l'addition du préfixe "b" pour indiquer une chaîne binaire:
$binaire = b'contenu';
Voilà, c'était mon info du jour.