我正在处理表格,然后根据提交的信息收到回复代码.我手中有一个大约40个响应代码(及其含义)的列表,我正在尝试构建一个检查预定义数组并返回特定值的'if'语句.
只是不知道该怎么做
$bads = array (1,2,3,4,5,6)
if ($output['responsecode'] == (any value in $bads) {
echo "you suck";
}
Run Code Online (Sandbox Code Playgroud)
我使用以下代码:
$bad_resp1 = array("D","M","A","B","W","Z","P","L","N","C","U","G","I","R","E","S","0","O","B");
$bad_resp2 = array("N","P","S","U");
$bad_resp3 = array("200","201","202","203","204","220","221","222","223","224","225","250","261","262","263","264","300","400","410","411","420","421","430","440","441","460","461");
Run Code Online (Sandbox Code Playgroud)
然后调用'if'语句:
if (in_array($output['response1'], $bad_resp1) || in_array($output['response2'], $bad_resp2) || in_array($output['response3'], $bad_resp3)) {
Header("Location: fail.php");
}
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
警告:in_array()期望参数2为数组,在第362行的C:\ xampp\htdocs\site\xyz.php中给出null
警告:in_array()期望参数2为数组,在第362行的C:\ xampp\htdocs\site\xyz.php中给出null
警告:in_array()期望参数2为数组,在第362行的C:\ xampp\htdocs\site\xyz.php中给出null
使用 in_array()
if (in_array($output['responsecode'], $bads)) { echo "you suck"; }
Run Code Online (Sandbox Code Playgroud)
if(in_array($output['responsecode'], $bads))
{
}
Run Code Online (Sandbox Code Playgroud)
此外,如果您的代码是顺序的,您可以使用范围来生成数组.
$bad = range(1, 10);
Run Code Online (Sandbox Code Playgroud)