gpt4 book ai didi

php - 嵌套三元运算符的优先顺序

转载 作者:行者123 更新时间:2023-12-02 01:03:16 41 4
gpt4 key购买 nike

<分区>

前几天我在类里面展示了这段代码:

 <?php
//Intialize the input
$score=rand(50,100);
//Determine the Grade
$grade=($score>=90)?'A':(
($score>=80)?'B':(
($score>=70)?'C':(
($score>=60)?'D':'F')));
//Output the Results
echo "<h1>A score of $score = $grade</h1>";
?>

当时我质疑嵌套三元运算符的运算顺序,认为它们会从里到外求值,即如果$score>=60就先求值,如果$score>=70就先求值,等等——无论分数如何,每次都要完成整个堆栈。

在我看来,这个构造应该遵循与数学运算符相同的优先顺序——首先解析最里面的一组括号,然后再计算,除非存在某些特定于三元运算符的运算顺序。

不幸的是,类里面的讨论很快就变成了赢得争论,而我真的只是想了解它是如何运作的。所以我的问题有两个:

(1)我会如何解释这个陈述,为什么?

(2) 是否有某种堆栈跟踪或单步调试工具可以让我观察这段代码的执行情况?

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com