【问题标题】:How to get full directory application path?如何获取完整目录应用程序路径?
【发布时间】:2016-02-05 05:06:08
【问题描述】:

我在这个路径中有一个可用的 php 应用程序:

A:\Utenti\John\Programmi\Bitnami\Wampstack\apache2\htdocs\Log

我想要这个完整的目录路径,我实际上是这样尝试的:

$logPath = $_SERVER['DOCUMENT_ROOT'] . rtrim($this->_logPath, DIRECTORY_SEPARATOR);
var_dump($logPath);

但我明白了:

A:/Utenti/John/Programmi/Bitnami/Wampstack/apache2/htdocs/home/app_test/cfg

应该是:

A:/Utenti/John/Programmi/Bitnami/Wampstack/apache2/htdocs/Log/home/app_text/cfg

更多详情:

  1. $this->_logPath 是什么?

是一个类变量,包含以下内容:home/app_text/cfg,你怎么看它加入了$_SERVER['DOCUMENT_ROOT']

  1. 我使用哪个 WebServer?

我实际上是在 localhost 中的 Bitnami 上,但是这个系统可以在任何在线 Web 服务器上运行。

无论如何,我几乎用这个解决了这个问题:

$logPath = __DIR__ . rtrim($this->_logPath, DIRECTORY_SEPARATOR);

返回:

A:\Utenti\John\Programmi\Bitnami\Wampstack\apache2\htdocs\Log\Log/home/app_test/cfg

你怎么能看到 Log 文件夹被复制了,但我不认为使用 __DIR__ 应该可以解决问题,也许你们有更优雅的解决方案?

【问题讨论】:

  • $this->_logPath 中有什么内容?
  • 我们需要更多代码来围绕您给出的行。这也有助于了解您正在使用的设置:LAMP、WAMP 等。
  • @RoyFalk,当然我已经用其他细节和另一种解决方法更新了我的问题。
  • @RyanVincent 有什么提示吗?我只是想获取应用程序文件夹的完整路径..
  • 哇,一个简单的 url 的代码太多了 :)

标签: php


【解决方案1】:

我认为你只需要添加一个 / :

$logPath = $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . rtrim($this->_logPath, DIRECTORY_SEPARATOR);

或者您可以使用 dirname 删除重复的 Log 目录:

$logPath = dirname(__DIR__) . DIRECTORY_SEPARATOR . rtrim($this->_logPath, DIRECTORY_SEPARATOR); 

【讨论】:

    猜你喜欢
    • 2011-09-30
    • 2010-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-30
    • 1970-01-01
    相关资源
    最近更新 更多