【发布时间】:2020-06-05 09:40:51
【问题描述】:
操作系统:Centos PHP:7.3
我正在学习 Kevin Skoglund 的关于 PHP 的初学者课程。这些是代码中的几行。我了解define() 和dirname() 函数。我只是不明白这里发生了什么。
define("PRIVATE_PATH", dirname(__FILE__));
define("PROJECT_PATH", dirname(PRIVATE_PATH));
define("PUBLIC_PATH", PROJECT_PATH . '/public');
define("SHARED_PATH", PRIVATE_PATH . '/shared');
这是 4 个常量的输出
/var/www/html/globe_bank/private
/var/www/html/globe_bank
/var/www/html/globe_bank/public
/var/www/html/globe_bank/private/shared
我不明白为什么dirname(__FILE__) 只进入目录private。 FILE 不应该转到所有根目录。
第二个常数也是如此
PROJECT_PATH。为什么一定要传参数PRIVATE_PATH?
这是另一段代码。
$public_end = strpos($_SERVER['SCRIPT_NAME'], '/public') + 7;
$doc_root = substr($_SERVER['SCRIPT_NAME'], 0, $public_end);
define("WWW_ROOT", $doc_root);
【问题讨论】:
-
输出数值,一目了然。
-
只需回显
echo PRIVATE_PATH;之类的内容,以便您了解它的外观。另外,像php strpos function这样的谷歌搜索会有所帮助 -
这不是我不明白的功能,是他们在做什么,这让我很困惑。