在我的php文件中使用它时,我继续在XML文件中没有属性的空屏幕
// Get parameters from URL
$center_lat = ( isset( $_GET["Lattitude"] ) ? $_GET["Lattitude"] : 37 );
$center_lng = ( isset( $_GET["Longitude"] ) ? $_GET["Longitude"] : -122 );
但是当我专门定义$ center_lat和lng到某个位置时,它会在XML文件中给我一个距离。
// Get parameters from URL
$center_lat = '40.4861111';
$center_lng = '-74.4522222';
$radius = ( isset( $_GET["radius"] ) ? $_GET["radius"] : 25 );
任何人都可以告诉我发生了什么事吗?帮助赞赏
答案 0 :(得分:0)
Ternary Operator需要三个操作数 - 一个条件,一个结果为true,结果为false。三元运算符是if语句的简写方式。在示例中:
$center_lat = ( isset( $_GET["Lattitude"] ) ? $_GET["Lattitude"] : 37 );
首先是条件(isset( $_GET["Lattitude"] )
,然后是问号?
,然后是真实结果,冒号:
和错误结果。如果isset( $_GET["Lattitude"]
为真,则$center_lat
将设置为$_GET["Lattitude"]
,否则将设置为37
。单行三元语句可以用这样的正常if语句表示:
<?php
if ( isset( $_GET["Lattitude"] ) {
$center_lat = $_GET["Lattitude"];//Value of $_GET["Lattitude
} else {
$center_lat = 37';//Default value
}
?>
问题是默认值为37,可能超出范围(在您的示例中为40.4861111)。
此外,您似乎没有获得$_GET["Lattitude"]
的任何值,否则将使用它而不是默认值。