gpt4 book ai didi

PHP - bind_result 到数组

转载 作者:可可西里 更新时间:2023-11-01 07:37:57 24 4
gpt4 key购买 nike

我正在为返回多个结果的查询使用准备好的语句,我希望将这些结果放在一个数组中。但是 bind_result 不适用于数组,所以我是这样做的:

$read_items = $db->stmt_init();
$read_items->prepare("SELECT item_id, item_name FROM items");
$read_items->execute();
$read_items->bind_result($var1, $var2);
while ($read_items->fetch()) {
$item_id[] = $var1;
$item_name[] = $var2;
}

是否有更清晰/更好/更优雅的方式将结果放入 $item_id 和 $item_name 数组?

从上面可以看出,我将 $var1 和 $var2 用作“中间体”——并且一直觉得一定有更好的方法。

谢谢。

最佳答案

我不能以此为荣,但是 PHP manual有一个很好的解决方案(逐字粘贴):

<?php

// blah blah...
call_user_func_array(array($mysqli_stmt_object, "bind_result"), $byref_array_for_fields);

// returns a copy of a value
$copy = create_function('$a', 'return $a;');

$results = array();
while ($mysqli_stmt_object->fetch()) {
// array_map will preserve keys when done here and this way
$results[] = array_map($copy, $byref_array_for_fields);
}

关于PHP - bind_result 到数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6576260/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com