在PHP中引用目录时,例如在下面的代码中。
index.php
if ($handle = opendir('/path/to/images/directory')) {
while (false !== ($fileName = readdir($handle))) {
...
}
closedir($handle);
}
我们可以假设的设置如下。以下表示[directory]
,所有代码都在index.php
文件中,我们希望迭代的imeages /文件位于[images]
目录中。
-[css]
-[js]
-[inc]
-[images]
-index.php
特别是opendir('/path/to/images/directory')) {
行,引用该目录的最佳做法是什么?
最后是否有一个尾随/
,因为它是一个目录或者是不必要的?
它应该是相对的吗? Absoulte?
我们可以使用SERVER_VARIABLES
吗?
答案 0 :(得分:2)
对于实际/绝对惯例我建议相对,但也许只是我。 它可以让您的代码更容易重新定位。
然后,好奇地,我检查了php源代码,并且opendir包含了各种c函数,其中一个是
php_check_open_basedir
313 while (ptr && *ptr) {
314 end = strchr(ptr, DEFAULT_DIR_SEPARATOR);
315 if (end != NULL) {
316 *end = '\0';
317 end++;
318 }
319
320 if (php_check_specific_open_basedir(ptr, path TSRMLS_CC) == 0) {
321 efree(pathbuf);
322 return 0;
323 }
324
325 ptr = end;
326 }
所以基本上它在你的路径中循环从一个DEFAULT_DIR_SEPARATOR跳到另一个。 所以我想,越少越好。
同时阅读您的代码,但也许只是我的口味: 使用$ dir。“/”。$ filename看起来比$ dir更好。$ filename
无论如何,我猜不会有真正的世界差异。