php-帮助比较数组和输入的字符串

时间:2014-05-11 13:30:53

标签: php

我正在尝试将我存储在数组中的字符串计数到用户输入的名称,通过比较它我得到的错误我的代码是

    <html>
    <head>
    <title>Untitled Document</title>
    </head>

    <body>
    <form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
    Name: <input type="text" name="fname">
    <input type="submit">
    </form>

    <?php 
    $wc=0;
    $m=array("kill","lop");
    $name = $_REQUEST['fname'];
    for($i=0; $i<2; $i++)
    {
    if($m[i]==$name)
    $wc=$wc+1;
    }
    echo $wc; 
    ?>
    </body>
    </html>

    i am getting error undefined i reference please help

3 个答案:

答案 0 :(得分:0)

更容易的事情

<?php 
        $wc=0;
        $m=array("kill","lop");
        $name = isset($_POST['fname'])?$_POST['fname']:'';
        if (in_array($name, $m))
        {
            $wc=$wc+1;
        }
        echo $wc; 
    ?>

答案 1 :(得分:0)

如果您想检查用户输入的内容是否在您的阵列中:

if (in_array($_REQUEST['fname'], $m)) {
   echo "found";
}
else {
  echo "not found";  
}

替代使用for循环:

   for ($i=0, $c = count($m); $i<$c; ++$i) {
    if ($m[$i] == $_REQUEST['fname']) {
        echo "found";
        break;
    }
   } 

答案 2 :(得分:0)

您有错误,因为在您的if i不是变量需要$i

if($m[i]==$name)

替换:

if($m[$i]==$name)