错误:数组转换为字符串

时间:2014-07-12 02:27:18

标签: php zend-framework2

我正在尝试使用此代码来提取一些值:

主要

// refhls : array 
foreach($refhls as $refhl){
    $abc = $this->getArrayIntervenants($refhl);
}

功能

public function getArrayIntervenants($refhl){
    $requete = $this->bdd->bd->prepare('SELECT intervenant FROM detailsfiche WHERE ref_hl = :ref_hl');
    $requete->bindValue(':ref_hl', $refhl, PDO::PARAM_INT);
    $requete->execute(); // -----MARKED LINE-----
    return $requete->fetchAll(PDO::FETCH_ASSOC);
}

这样做我在标记的行上收到此错误消息:

  

注意:第138行的file.php中的数组到字符串转换

我该如何解决?

2 个答案:

答案 0 :(得分:0)

$ refhl是一个数组。您不能将数组用作字符串。

尝试通过

检查数组中的字符串
isset($refh1[$positionKey]) { }

如果值存在,则使用它!

答案 1 :(得分:0)

由于您的变量$ refhl是一个数组,因此无法直接将其绑定。在函数开头调用var_dump将对您有所帮助。

  

的var_dump($ refhl);

然后您可以用以下内容替换您的行:

$requete->bindValue(':ref_hl', $refhl['myArrayKey'], PDO::PARAM_INT);