3

我认为当我回显 $whereArray 和 orderByArray 时会出现问题。如果我输入诸如“问题”之类的单词然后提交,我希望它会显示在 echos "%".Question."%"; 对于两个数组。但相反,在两个回声中,它只为两个回声显示“阵列”。这是否意味着在存储值时两个数组都不起作用?

 $searchquestion = $_GET['questioncontent'];
    $terms = explode(" ", $searchquestion);

$whereArray = array();
$orderByArray = array();


    //loop through each term
    foreach ($terms as $each) {
        $i++;
        $whereArray[] = "%".$each."%";
        $orderByArray[] = "%".$each."%"; 


    }

        echo $whereArray;
        echo $orderByArray;
4

4 回答 4

2

echo()仅适用于字符串。PHP 将您的数组转换"Array"为备用。

调试时,应使用var_dump(). 它将告诉您对象的类型及其内容。

于 2012-06-28T22:06:30.850 回答
1

需要使用 print_r 等特殊函数打印出数组。如果要打印数组中的值,请尝试:

echo $whereArray[0];

获取第一个元素。请小心,因为如果数组为空,您将收到错误消息。

于 2012-06-28T22:05:43.077 回答
1

你也可以遍历它们

foreach($arrayname as $value)
     echo $value;

或者

  echo implode("",$arrayname);
于 2012-06-28T22:06:16.220 回答
1

使用var_dumporprint_r代替echo(它们是函数,而不是像echois 这样的构造)。

于 2012-06-28T22:02:31.430 回答