<?phprequire 'index.html'; //require 与 include 的区别在于前者出错,不再运行程序function test(){ if(isset ($_POST[c]) && isset ($_POST[d])){ $a=$_POST[c]; $b=$_POST[d]; } if($a<$b){ return 1; //return 返回函数值之后,终止函数脚本运行,不再运行余下语句 } return -1; } $res=test(); if($res==1){ echo '$x<$y'; } else{ echo '$x>$y'; }?>
$_POST["c"]
$_POST["d"]
$_POST[ “c ”]都加引号
感谢帮助,我把$_POST[] 放到函数外面,就不再提示错误了。是不是这个原因呢?
除非你屏蔽掉 E_NOTICE 级别错误检查
否则
数组的关联键需要用引号括起 $_POST["c"]、$_POST["d"]
$a、$b 的赋值在条件分支内,如果不是表单提交则他们就不存在
正确的写法是
<?phprequire 'index.html'; function test() { $a = $b = 0; if(isset ($_POST['c']) && isset ($_POST['d'])){ $a=$_POST['c']; $b=$_POST['d']; } if($a<$b){ return 1; } return -1;}$res=test();if($res==1){ echo '$x<$y';}else{ echo '$x>$y';}?>