我应该在末尾保存带或不带尾随斜杠的路径,这是什么惯例

时间:2013-07-02 07:06:40

标签: php conventions

我总是混淆我是否应该在路径的末尾添加一个尾部斜杠,并且经常混淆它,导致找不到某个文件。 drupal示例:

$base_theme = '/sites/all/themes/myTheme/';

$base_theme = '/sites/all/themes/myTheme';

图像路径可以扩展基本主题:

$base_image = $base_theme.'images/';

$base_image = $base_theme.'/images';

有会议吗?或者我可以选择我更喜欢哪一个?

我会选择使用尾部斜杠完成所有路径,因为太多斜杠比没斜杠更好。

1 个答案:

答案 0 :(得分:19)

  

TL; DR:没有真正的约定。尾部斜杠将是更易于识别的全局格式。重要的是,您通过设计保持一致,并清楚地传达您的使用方法。


没有真正的惯例;但是需要考虑。

尾部斜杠的优点:

  1. 尾部斜杠通常表示文件夹路径(或经过修饰的URL),而文件扩展名表示直接文件链接。 (想想example.com/home/ VS example.com/style.css)。
  2. 对于来自UNIX等的人来说,这通常更友好,因为在终端中一个明确的约定是为目录留下一个尾部斜杠。
  3. 作为程序员 - 添加尾部斜杠会导致程序员错误的可能性降低;例如:意外添加第二个斜杠看起来很丑(http://example.com/styles//myfile.css)但不会破坏文件链接。忘记斜杠:http://example.com/stylesmyfile.css,但是查询字符串的行为可能会令人困惑:http://example.com/thread?id=1 VS http://example.com/thread/?id=1< - 结果实际上取决于您处理.htaccess的方式。
  4. 无路径优势:

    1. 更漂亮,有些人可能会说
    2. 它更容易记住,并且在将路径附加到变量字符串时总是添加斜杠而不是更可读。即,比$baseURL . '/path.php'
    3. 更容易记住$baseURL . 'path.php'