如何使另一个计数函数内部的计数函数起作用

时间:2019-07-31 12:45:40

标签: php mysql

我试图访问我在另一个count函数内的count函数中声明的变量,但是当我调用该函数时,它恰好未定义如下

Found
Notice: Undefined variable: name1 in /opt/lampp/htdocs/hello.php on line 32

我使用count函数访问爆炸函数输出的各种数据。爆炸数据是来自文本文件的信息。这是下面的文本文件数据

Trinity Clare 2019-07-31 F Mary
signature A 

从文本文件获取数据并访问该数据的代码如下

 <?php
    $conn = mysqli_connect('localhost','root','','recess') or die('couldnt connect'.mysqli_error());

    //Kampala
    if(file_exists("/opt/lampp/htdocs/Recess/Kampala.txt"))
    {
      $file = fopen("/opt/lampp/htdocs/Recess/Kampala.txt","r");
      while(!feof($file))
      {
        $content = fgets($file);
        $carray = explode(" ", $content);
        //var_dump($carray);
        if(count($carray)==3)
        {
            list($word,$letter) = $carray;
            $sign = "SELECT signature from agents";
            $result = mysqli_query($conn,$sign);
            $data = array();
            while($signature = mysqli_fetch_array($result))
            {
                $data[] = $signature['signature'];
            }
            if(in_array($letter, $data))
            {
                echo "Found";
                if(count($carray)==5)
                {
                    list($name1,$name2,$date,$gender,$recommender1) = $carray;

                }
                echo $name1;
            }
            else{
                echo "none";
            }
        }
        }
    }

    ?>

如果在从mysql提取的数据数组中找到字母“ A”,并且在第二个count语句中为其分配了变量后,应该打印文本文件中的第一个单词,则应返回“找到” / p>

1 个答案:

答案 0 :(得分:0)

您可以在if语句中以及在if后定义$name1
每当if语句为false时,您都会收到此错误。

您可以通过检查$ name1变量的存在来解决它:

echo "Found";
if(count($carray)==5) {
    list($name1,$name2,$date,$gender,$recommender1) = $carray;

}
echo isset($name1) ? $name1 : "<br>Count $carray != 5";