【问题标题】:get and save path to php.ini file获取并保存 php.ini 文件的路径
【发布时间】:2011-08-24 10:36:34
【问题描述】:

是否可以使用 php 脚本获取 php.ini 文件的路径并将此路径保存到变量中?我知道我可以调用 phpinfo() 来找出路径,但它会打印很多信息,我只需要 php.ini 文件的路径,根本不需要输出。提前谢谢你。

【问题讨论】:

  • 你需要这个做什么?过程中可能存在障碍,例如如果根本没有 ini 文件,PHP 会显示错误的路径。
  • @Pekka 我需要将其显示在我正在处理的系统中的特殊信息块中。该系统由不同服务器上的不同客户端使用,因此路径可能会有所不同。障碍不会吓到我)

标签: path php php-ini


【解决方案1】:

当然,有两个功能与您想做的事情相关。第一个正是您要查找的内容,第二个显示了可以有多个 ini 文件的大图:

  1. php_ini_loaded_fileDocs - 获取加载的 php.ini 文件的路径。
  2. php_ini_scanned_filesDocs - 返回从附加 ini 目录解析的 .ini 文件列表。

除此之外,请注意与.user.ini files 的差距,它们不会出现在php_ini_scanned_files 或phpinfo 中。

【讨论】:

  • 哇,我从来不知道这些功能的存在......让生活更轻松:)
  • @hakre 谢谢,非常感谢。
【解决方案2】:

您可以执行(“php -i | grep php.ini”),然后获取该输出。 或者你可以使用 outputbuffering (ob_start()),运行 phpinfo(),获取 outputbuffer 的内容 (ob_get_contents()) 并通过它搜索 (preg_match) 来找到 php.ini 文件...

【讨论】:

    【解决方案3】:

    这适用于命令行,也可能适用于 CGI:

    ob_start(); phpinfo();
    if ( preg_match( '#>(.+)/php.ini#', ob_get_clean(), $matches ) ) {
        echo 'php.ini location: ' . trim( $matches[1] ) . '/php.ini';
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-15
      • 2018-01-17
      • 1970-01-01
      • 2013-05-17
      • 1970-01-01
      • 2020-09-10
      相关资源
      最近更新 更多