【问题标题】:PHP - Getting a current directoryPHP - 获取当前目录
【发布时间】:2013-01-29 07:34:55
【问题描述】:

我会设置场景...

  1. 我有一个文件 example.php
  2. 该特定文件位于名为 test 的文件夹中
  3. 完整的文件路径是/root/user/website/htdocs/test/example.php

我想要回显文件所在的目录,即。 测试

我已经通过阅读下面的函数并创建脚本来做到这一点,这是一种不好的方法吗?有没有更简单的方法?

<?php
$dir_array = explode('/', getcwd());
$dir_current = end($dir_array);

echo $dir_current;
?>

输出test

提前致谢。

【问题讨论】:

标签: php


【解决方案1】:

考虑这条路径store.com/products/electronics/index.php

这也适用于include()

第三种组合应该适用于 OP。


$_SERVER['PHP_SELF'];

/products/electronics/index.php


dirname($_SERVER['PHP_SELF']);

/产品/电子产品


basename(dirname($_SERVER['PHP_SELF']));

电子产品


basename($_SERVER['PHP_SELF']);

index.php


【讨论】:

    【解决方案2】:

    PHP 对此有一个常量:

    echo __DIR__;
    

    如果您只想拥有路径的最后一部分 - test - 在您的情况下,请使用 basename()

    echo basename(__DIR__);
    

    【讨论】:

    • 正是我要找的东西,它做同样的工作,但更干净一些。非常感谢。 &lt;?php echo basename(__DIR__); ?&gt;
    【解决方案3】:

    我建议您使用以下代码:

    echo array_pop(explode('/', dirname(__FILE__)));
    

    如果你的PHP版本在5.3.0以上,可以将dirname(__FILE__)替换成__DIR__

    关于getcwd()的问题你可以阅读here

    【讨论】:

      【解决方案4】:

      差不多:

      <?php
      $dir_current = $dir_array[count($dir_array)-1];
      ?>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-04-17
        • 1970-01-01
        • 2019-05-23
        • 2016-08-20
        • 2010-10-26
        • 1970-01-01
        相关资源
        最近更新 更多