Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在循环PHP中使用键和值创建数组_Php_Arrays_Multidimensional Array_Pdo - Fatal编程技术网

在循环PHP中使用键和值创建数组

在循环PHP中使用键和值创建数组,php,arrays,multidimensional-array,pdo,Php,Arrays,Multidimensional Array,Pdo,我使用的是PDO,尽管有表名,我还是设法获得了表列,并创建了绑定变量,如。。。值(:foo,:bar) 我尝试的方法是insert() 您必须循环$data数组,并根据需要添加函数。 从“”获取值。。。值(:foo,:bar);然后像在代码中一样分解,然后循环$col数组,并根据需要向$data添加值 foreach($col as $val){ $method = "get".ucfirst( $val); $data[ $val] = call_user_func(arra

我使用的是PDO,尽管有表名,我还是设法获得了表列,并创建了绑定变量,如
。。。值(:foo,:bar)

我尝试的方法是
insert()


您必须循环$data数组,并根据需要添加函数。 从“”获取值。。。值(:foo,:bar);然后像在代码中一样分解,然后循环$col数组,并根据需要向$data添加值

foreach($col as $val){
    $method = "get".ucfirst( $val);
    $data[ $val] =  call_user_func(array( $this->entity,$method));
}
上面的代码可以按如下方式工作

$data[':foo'] =  $this->entity->getFoo();
$data[':bar'] =  $this->entity->getBar();

也发布相关代码。请添加您如何创建准备语句的代码,以便我们了解您使用了哪些变量,等等。我编辑了我的问题,试图让它更清楚地说明我的需要。谢谢。:)请将$data=array($col[$i]=>“\$this->entity->get.ucfirst($col[$i])。”()”)替换为我的代码$data[$temp]=call\u user\u func(array($this->entity,$method));试试看。
$data[':foo'] =  $this->entity->getFoo();
$data[':bar'] =  $this->entity->getBar();