Quelle est la différence entre ces quatre relevés PHP?
if (isset($data)) {
if (!empty($data)) {
if ($data != '') {
if ($data) {
4 Réponses :
vérifier le manuel PHP: http://www.php.net/manual /en/types.comparisons.php Comme vous pouvez le voir, si (! vide ($ x)) code> est égal à Si ($ x) code> et si (! is_null ($ x)) code> est égal à si ($ x)) code>. Aussi loin que si $ data! = '' ' Code> va, il est true code> si $ data code> n'est pas null code>, '' code>, false code> ou 0 code> (comparaison desserré). P> P>
Ils ne sont pas les mêmes. P>
true si la variable est définie. La variable peut être réglée sur vide et cela serait vrai. P> li>
true si la variable est définie si la variable ne correspond pas à une chaîne vide, si la variable n'est pas définie sa chaîne vide. P> li>
Si la variable se contracte à true, si la variable n'est pas définie, elle coerce sur False. P> Li>
ol> isset code>. p> li>
if ($data) {
Le manuel le met comme ceci: vide () code > Est-ce le contraire de (booléen) var code>, sauf qu'aucun avertissement n'est généré lorsque la variable n'est pas définie. B> Voir aussi Cette réponse .
Si (Isset ($ données)) - détermine si une variable est définie (n'a pas parié Si (! vide ($ data)) - est une vérification de type agnostique pour vide si $ données était '', 0, false ou null, il retournerait vrai. P>
si ($ data! = '') {Ceci est un type de chaîne de sécurité de vérifier si $ données ne sont pas égales à une chaîne vide p>
Si ($ données) {Ceci est une recherche de vrai ou de faux (AKA: 0 ou 1) P> 'nonset ()' code> et n'est pas null p>. p>.
Si ($ données) {Ceci est une recherche de vrai ou de faux (aka: 0 ou 1) code> <- pas tout à fait correct. Ce sera vrai si $ données code> contient quelque chose qui ne résout pas false (essentiellement les mêmes choses que ! Vide ($ données) code>)