我使用的是raspberry pi,我使用的是apache服务器。如果url中的id是偶数,PHP代码将执行python脚本。当python脚本位于if-else块之外时,它运行得非常好。
<?php
$op=shell_exec("python /home/pi/hi.py");
echo $op;
$id = intval($_GET["id"]);
echo $id."\n";
?>
但是当置于if-else块时,它无法工作。
<?php
$id = intval($_GET["id"]);
echo $id."\n";
if($id%2==0)
echo "Even";
$op=shell_exec("python /home/pi/hi.py");
echo $op;
else
echo "Odd";
?>
我是php的新手,我似乎无法理解这个问题。
答案 0 :(得分:1)
else
实际上是语法错误。如果if
之后的语句没有括号,那么PHP需要一个语句来跟随它。由于存在多个,else
在到达时是意外的。
添加大括号应解决问题。
if ($id%2==0) {
echo "Even";
$op=shell_exec("python /home/pi/hi.py");
echo $op;
} else {
echo "Odd";
}
一般来说,即使您只有一个声明,我认为总是使用大括号是个好主意。这样,当您稍后添加更多语句时,您将不会遇到此问题。