Maison > développement back-end > tutoriel php > 表达式echo 5 ? : 1; 为何输出5

表达式echo 5 ? : 1; 为何输出5

WBOY
Libérer: 2016-06-06 20:17:55
original
1374 Les gens l'ont consulté

不是该输出null(空)吗?

回复内容:

不是该输出null(空)吗?

就是三元运算符的简单写法,5为真就输出5了。

文档有解释:三元运算符

表达式 (expr1) ? (expr2) : (expr3) 在 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。
自 PHP 5.3 起,可以省略三元运算符中间那部分。表达式 expr1 ?: expr3 在 expr1 求值为 TRUE 时返回 expr1,否则返回 expr3。

因为5大于0,所以返回true,php三元表达式省略第二个参数时,判断结果又是true的话,返回第一个参数。

<code class="php">a ? a : b;
//可以缩写为
a ?: b;
//所以上面句 句子等效为:
echo  5 ? 5  : 1 ;</code>
Copier après la connexion

a ?: b; 中,如果 a为表达式则,表达式不会再次执行,而a ? a : b; 若表达式返回ture,则会再次执行一遍

因为5是真啊

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal