提取 php 应用程序的主目录名称
Extract main directory name of php application
I would like to get only the application name of my project, For
example my application name(Directory Name) is : MERP The path of
the application is: C:/xampp/htdocs/MERP
So I need to get only the name
MERP.
There is another way storing application name inside a config file using define syntax and
include in all the files, but my scenario is stuck with this step
only.
您好,您可以使用它来获取 MERP 词典名称,只需下面的 php 代码
basename(__DIR__);
如果你想获取和输出你可以在代码前使用echo
如果您在 parent 中有多个词典,请使用此代码:
<?php
$rootAfter = $_SERVER['REQUEST_URI'];
$dir_array = parse_url($rootAfter);
preg_match('@/(?<path>[^/]+)@', $dir_array['path'], $x);
$folderName = $x['path'];
echo $folderName;
?>
详情请见php.net
对于文档根目录下的 Php 个文件:
你可以试试:
strtok(str_replace(realpath($_SERVER['DOCUMENT_ROOT']), '', __FILE__), DIRECTORY_SEPARATOR);
然而,这仍然很脆弱。我会反对它,更喜欢带有常量声明的 setup/bootstrap 文件,以及常见功能的可能位置。
Php 允许在脚本之前应用公共文件,请参阅 auto_prepend_file 指令。如果您想超越几个常量并保存单个文件中的 require 行,这可能很有用。
如果您只需要少数常量,请考虑环境变量。
对于这种工作,我通常使用 getcvd() ,例如,apache vhost 指向 public/index,它将 return full/path/to/merp/public 。
从这个值开始,您可以使用 dirname
如果您不使用“public”目录,getcvd 就足够了。
I would like to get only the application name of my project, For example my application name(Directory Name) is : MERP The path of the application is: C:/xampp/htdocs/MERP So I need to get only the name MERP.
There is another way storing application name inside a config file using define syntax and include in all the files, but my scenario is stuck with this step only.
您好,您可以使用它来获取 MERP 词典名称,只需下面的 php 代码
basename(__DIR__);
如果你想获取和输出你可以在代码前使用echo
如果您在 parent 中有多个词典,请使用此代码:
<?php
$rootAfter = $_SERVER['REQUEST_URI'];
$dir_array = parse_url($rootAfter);
preg_match('@/(?<path>[^/]+)@', $dir_array['path'], $x);
$folderName = $x['path'];
echo $folderName;
?>
详情请见php.net
对于文档根目录下的 Php 个文件:
你可以试试:
strtok(str_replace(realpath($_SERVER['DOCUMENT_ROOT']), '', __FILE__), DIRECTORY_SEPARATOR);
然而,这仍然很脆弱。我会反对它,更喜欢带有常量声明的 setup/bootstrap 文件,以及常见功能的可能位置。
Php 允许在脚本之前应用公共文件,请参阅 auto_prepend_file 指令。如果您想超越几个常量并保存单个文件中的 require 行,这可能很有用。
如果您只需要少数常量,请考虑环境变量。
对于这种工作,我通常使用 getcvd() ,例如,apache vhost 指向 public/index,它将 return full/path/to/merp/public 。 从这个值开始,您可以使用 dirname
如果您不使用“public”目录,getcvd 就足够了。