PHP函数返回NULL而不是数组[重复]

2023-12-31

我调用一个执行一些递归并且应该返回一个数组的函数。事实上,被调用函数中 return 语句之前的 var_dump 就表明了该数组;然而,调用函数结果的 var_dump 显示 NULL 而不是数组。

这是调用函数。

<?php  

// configuration
require_once("../includes/config.php");
require_once("../includes/getParentNodes.php");  

$bottomNode = 17389;
$chain = [];
$chain[] = $bottomNode;
$results = getParentNodes($bottomNode,$chain);

var_dump($results); ?>

这是被调用的函数。

<?php

function getParentNodes($node, $results)
{
    $select = query("SELECT parent_id FROM classifications WHERE node_id = ?", $node);
    $parent = implode("",$select[0]);
    if (!empty($parent))
    {
        $results[] = $parent;
        getParentNodes($parent,$results);   
    }
    else
    {
        return $results;
    }
}
?>

如果我在返回调用之前放置一个 var_dump,我会得到以下结果。

Array
(
    [0] => 17389
    [1] => 17386
    [2] => 17334
    [3] => 16788
    [4] => 15157
    [5] => 10648
    [6] => 3962
    [7] => 665
    [8] => 39
    [9] => 1
)

但是,调用函数中的 var_dump 会生成 NULL。

我已阅读手册和相关帖子,但没有人阐明这个问题。任何帮助将非常感激。


你缺少一个return在递归的情况下。

      $results[] = $parent;
      return getParentNodes($parent,$results);   
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP函数返回NULL而不是数组[重复] 的相关文章

  • 是否可以修改 $_SESSION 变量?

    恶意用户是否可以将 SESSION 在 php 中 变量设置为他想要的任何值 很大程度上取决于您的代码 有一点非常明显 SESSION username REQUEST username
  • PHP、htaccess:在 URL 中应用页面标题

    我想在 URL 中应用页面 HTML 标题 例如 在这里 stackoverflow url 是这样的 http stackoverflow com questions 10000000 get the title of a page ur
  • 将 C 数组作为 char* 函数参数传递

    我有一些使用以下变量声明维护的代码 char tmpry 40 它与此功能一起使用 char SomeFunction char tmpryP Do stuff 函数调用是 SomeFunction tmpry 0 我非常确定这与以下内容相
  • 从图像创建 PDF 时设置文档名称

    我使用以下代码从 jpg 图像创建 pdf im new Imagick im gt readImage image jpg im gt setImageFormat pdf im gt writeImage images pdf imag
  • 使用ip地址访问时删除index.php

    我在服务器上上传了 codeigniter 项目 从 URL 中删除 index php 不起作用 我使用IP地址访问它 喜欢http ip http ip地址 下面是我的htaccess
  • 构建错误:致命错误:pcre.h:没有这样的文件或目录

    我刚刚安装完 Ubuntu 13 10 我想尝试 Phalcon 当我构建源代码 phalcon so 时 出现以下错误 from home fabrice Downloads cphalcon build 32bits phalcon c
  • 使用 fgetcsv 循环遍历 csv

    我有一个包含 3 列的 csv 文件 电子邮件地址 名 and 姓 我已经到了可以使用以下代码打印数组的阶段 这会打印数组 因此每个字段都在一行中 我希望它打印的只是该行第一列中的值 这是如何完成的 关于 fgetcsv 的文档对我 相对初
  • PHPUnit RabbitMQ:为创建连接函数编写测试

    我面临以下问题 我编写了一个函数 根据所需参数创建连接对象 AMQPConnection 现在我想编写相应的单元测试 我只是不知道在没有运行 RabbitMQ 代理的情况下如何做到这一点 这是有问题的函数 public function g
  • 在 Codeigniter 中编写模型代码的最佳方法是什么

    我对于在 codeigniter 中使用哪种技术来编码模型感到非常困惑 我进行了很多搜索 发现了各种编码人员使用的各种方法 请指导我使用 codeigniter 编写模型类的最佳方法 例子很少 有些方法签名中需要很长的参数 function
  • 安装 Symfony 2.4.1 lib-icu 4.4 依赖项时出现问题

    我遇到了与以下相同的问题this one https stackoverflow com questions 16753105 problems with lib icu dependency when installing symfony
  • 将记录分成两列

    我的数据库中有一个 学生 表 其中包含大约 5 000 条记录 我想将这些记录显示在two分区 如何在不执行查询两次的情况下做到这一点 仅使用单个查询 显示示例http www freeimagehosting net uploads f1
  • 从 XML 节点 PHP DOM 中删除所有子节点

    我想使用 PHP DOM 从 XML 节点中删除所有子节点 以下之间有什么区别 A while parentNode gt hasChildNodes parentNode gt removeChild parentNode gt chil
  • Magento - 当我的订单取消或退款时如何运行代码

    如果订单被取消或退款 我的支付模块需要向支付服务发送通知 我假设订单页面 在管理后端 上的 取消 按钮将取消订单 而 贷项通知单 按钮 创建发票后 将退还订单 如何针对这些事件运行我的代码 我尝试在付款方式模型中使用 cancel 方法 但
  • 如何使用 Laravel Eloquent 返回多重关系?

    我有一张桌子叫users 每个用户都有不同的事情 country device computer category 我为上述每一个 事物 创建了一个表格 类似如下 1 United States 2 United Kingdom 3 Aus
  • TCPDF UTF-8 符号未显示

    我使用最新的 TCPDF 版本 5 9 但在编码方面遇到一些奇怪的问题 我需要立陶宛语语言符号 例如 但只能得到其中的一小部分 其他的还是这样 所以我该怎么做 我使用默认的 times 字体 它带有 TCPDF 下载 任何帮助 将不胜感激
  • Laravel 集成测试:如何断言一个 URL 已被调用但另一个 URL 没有

    我想测试一个向某个 URL 发出请求的控制器 例如 http example com api say hello 但它不会向另一个 URL 发出请求 例如 http example com api say bye bye 我想测试的控制器功
  • PDO SQLSRV 和 PDO MySQL 在获取 int 或 float 时返回字符串

    当您获取时 PDO MS SQL Server 和 PDO MySQL 都会返回一个字符串数组 即使列的 SQL 类型本应是数字类型 例如 int 或 float 我设法解决了这个问题 但我想了解为什么它们一开始就这样设计 是不是因为PDO
  • 显示表中的记录

    我的第一个 PHP 项目遇到了一些麻烦 我试图从 MySQL 数据库 有 3 条记录 获取数据并将其显示在表格中 问题是它似乎只显示记录 2 和 3 它跳过了第 1 条记录 请参阅我的代码并在下面显示 if mysqli connect e
  • 如何使用CSS将背景图像放入选择选项标签中

    我有一个从 json 响应接收的国家 地区下拉列表 并且想要在国家 地区名称旁边添加相应的国家 地区国旗图标 也从 json 响应获取图像 我已经尝试了不同的 jQuery 和 bootstrap 插件 但他们所做的是破坏我以前的选择框样式
  • PHP - Filter_var 替代方案?

    我构建了一个 php 脚本来输出以表单形式发布的数据 但遇到了问题 网站将运行的服务器运行 PHP 5 1 6 此版本的 PHP 不支持 filter var 我需要知道短期内的替代方案 最好是昨天 但在 Google 或 Stack Ov

随机推荐

  • 延迟应用程序DidEnter后台屏幕截图

    当应用程序进入后台时 有没有办法延迟 iOS 进行的屏幕捕获 原因是 当用户进入主屏幕时 我有时会显示一个视图 我希望删除此视图 这样当应用程序恢复时它就不会显示 有问题的视图是SSHUDView 源代码here https github
  • Sphinx、literalinclude、linenos:如何在文档的代码片段上显示源代码文件中的实际行号?

    我正在使用 Sphinx 来记录网页上的部分 Javascript 代码 I use literalinclude examples mapviz step1 simple html language javascript lines 47
  • Python 中的 Unicode 标识符?

    我想构建一个Python函数来计算 并想将我的求和函数命名为 以类似的方式 想使用 表示乘积 等等 我想知道是否有办法以这种方式命名 python 函数 def 也就是说 Python 是否支持 unicode 标识符 如果支持 有人可以提
  • 如何避免使用 Django、nginx 和 uWSGI 将环境变量放入多个位置?

    我正在尝试配置 nginx uWSGI 来为我的 Django 应用程序提供服务 当我将环境变量放入myapp uwsgi ini uid username gid username env DJANGO SITE KEY 它按预期工作 但
  • Jetpack Compose 测试:断言特定图像已设置

    我有一个Image编写如下 Image bitmap ImageBitmap imageResource id R drawable testimage contentDescription null Only decorative ima
  • 打印 pid_t 的正确 printf 说明符是什么

    我目前正在使用显式转换为 long 并使用 ld用于印刷pid t 是否有一个说明符 例如 z for size t for pid t 如果不是最好的打印方式是什么pid t 没有这样的说明符 我认为你在做什么 铸造pid t to lo
  • docker 运行启动容器,但 localhost 未加载(Windows 10)

    我正在关注本教程 https blog scrapinghub com 2015 03 02 handling javascript in scrapy with splash 使用splash来帮助抓取网页 我安装了Docker工具箱并执
  • 无法从其他设备远程连接 + Vorlon

    Vorlon 仪表板未显示所有连接的设备 我有桌面并安装了 Vorlon 我从笔记本电脑或 ipad 使用此桌面的本地主机 它显示网页 但它没有显示 vorlon 中的设备 但它会显示我是否从同一个桌面打开 我是我的坏人 我正在使用 loc
  • 当对象完成时取消任务

    我有一个启动任务的类 并希望确保该任务在对象被垃圾收集时停止 我已经实现了 IDisposable 模式 以确保如果手动处理对象或在 using 块中使用对象 则任务会正确停止 However 我不能保证最终用户会调用 Dispose 或在
  • 在私有版本的 python 中安装 setuptools

    新手问题 但是 我在系统版本为2 3的主机上安装了python2 7 2 7位于 python2 7 bin python 我想添加一些软件包 例如 MySQLdb 但需要安装工具 说明表明您可以使用 prefix 作为参数 但是 如果我执
  • br 标签在 Haml on Rails 3 中未关闭

    我在让 Haml 关闭 br 标签时遇到问题 我尝试了以下方法但没有成功 br br 我预计这会导致 br 但它总是输出为 br 即使末尾有斜线字符 我还尝试将以下选项添加到 application rb 并且我尝试了environment
  • 用于检查 4 个不同字符组中至少存在 3 个的正则表达式

    我正在尝试编写一个密码验证器 如何查看我提供的字符串是否包含至少 3 个不同的字符组 检查它们是否存在很容易 但至少有 3 个 至少八 8 个字符 至少三个不同的角色组 大写字母 小写字母 numeric 特殊字符 我正在使用 javasc
  • 在 jquery post 中发送长字符串

    我无法在 jquery post 方法中发送长字符串 超过 96 个字符 在 FF12 和 Chrome 18 中测试 我的 servlet 是 public class TestServletAsh extends HttpServlet
  • SoftLayer API 用于了解 VLAN 中的总 IP 和可用 IP

    SoftLayer API 用于了解 VLAN 中的总 IP 和可用 IP Hello 如果我知道某个 VLAN 的总 IP 数和已用 可用 IP 可以使用哪个 APIVLAN ID 我能想到的一种方法是我可以获得 VLAN 的子网 然后在
  • (Python) ValueError:在路径中找不到程序点

    我有以下问题 我在 xUbuntu 操作系统上 我尝试在 Flask 应用程序中使用 networkx 并且我有以下代码 import networkx as nx Creating and initializing graph objec
  • ASP.NET MVC C#:查看记录详细信息时出现对象引用错误

    我是一个 NET 和 MVC 新手 在经历了 ASP 的长时间使用之后 我第一次学习它 现在是时候进行转换 让我构建 Web 应用程序的工作变得更加容易 我一直在浏览 Stephen Walther 的有用视频教程来了解大多数事情 到目前为
  • ICC 汇编输出中的所有这些数字意味着什么?

    使用 ICC 编译时 每条指令后面都是 2 个点分隔的数字 并以哈希符号为前缀 这意味着什么 例如 https gcc godbolt org g g g h codeEditor i j 1 source int testFunction
  • :nth-child(n+4):nth-child(-n+8) 如何选择一系列元素?

    根据http nthmaster com http nthmaster com 当通过 nth child 设置一系列元素的样式时 我们必须这样做 nth child n 4 nth child n 8 如果我们只使用一个 nth chil
  • 自动宽度和 100% 宽度之间的差异

    之前我的假设是width auto宽度设置为内容的宽度 现在我看到它占据了父级的整个宽度 谁能描述一下它们之间的区别吗 宽度自动 像 div 或 p 这样的块级元素的初始宽度是 auto 这使得它扩展以占据其包含块内的所有可用水平空间 如果
  • PHP函数返回NULL而不是数组[重复]

    这个问题在这里已经有答案了 我调用一个执行一些递归并且应该返回一个数组的函数 事实上 被调用函数中 return 语句之前的 var dump 就表明了该数组 然而 调用函数结果的 var dump 显示 NULL 而不是数组 这是调用函数