gpt4 book ai didi

php - call_user_func_array 问题

转载 作者:行者123 更新时间:2023-11-29 04:46:57 24 4
gpt4 key购买 nike

在组合数组时遇到了一些问题......这可行:

    $un[0] = array("0:0:0");
//$un[1] = array("1:1:1");
$flat = call_user_func_array('array_merge', $un);

如果我取消注释第二个 $un,它仍然有效(并结合了两者)。

现在,如果我说,将其从硬编码数组更改为来自数据库查询的数组(我知道不推荐使用 mysql ext):

            $u = mysql_query("SELECT `XX` FROM `XX` WHERE `XX` = '".$XX."' AND `XX` = '0'");
$un = mysql_fetch_row($u);

我通过 PhpMyAdmin 运行查询并且它有效。因此,当我在 mysql_fetch_row 之后添加 $flat = call_user_func_array('array_merge', $un); 时,它会返回一个错误:

PHP 警告:array_merge() [function.array-merge]:参数 #1 不是**LOCATION**

中的数组

而且我似乎无法弄清楚为什么...因为数据库查询应该吐出 $un[0]、$un[1] 等,与正常工作的代码完全一样,不是吗?

最佳答案

array_merge 不包括一个或多个数组 - 您实际做的是将行的所有单元格作为参数传递给 array_merge。这看起来像 array_merge('row1', 'row2',...)

所以你想要的可能是这样的

$flat = call_user_func_array('array_merge', array($un));

关于php - call_user_func_array 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17687420/

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