PHP 三元运算符不起作用,但不显示任何错误


PHP ternary operator not working but does not display any error

<?php
    /*if(isset($_COOKIE["telcoProvider"])) {
        $telcoProvider = $_COOKIE["telcoProvider"];
    } else {
        $telcoProvider = "NOT FOUND";
    }*/
    $telcoProvider = isset($_COOKIE["telcoProvider"]) ? $_COOKIE["telcoProvider"] : "NOT FOUND".
    print "<p>Your telecommunication company is <b>$telcoProvider.</b></p>";
?>

我已经检查了浏览器,Cookie 在那里。

它适用于普通的 if-else,但不适用于三元运算符。它不会继续 print ,但它也没有显示任何错误。

我错过了什么?

$telcoProvider = isset($_COOKIE["telcoProvider"]) ?
 $_COOKIE["telcoProvider"] : "NOT FOUND".
                                        ^

那个点(.)在那里做什么而不是;

我想知道为什么Eclipse什么也没说?

试试这个,你会得到这个问题的答案:)请注意print之前的点

$test= 1==1? "Oh nice no print :P " : "Oh" . print("Really?");
var_dump($test);