PHP-超链接开始斜线?
作者:互联网
在我的PHP脚本中,我创建了一个常量变量,该常量定义了要放置在我的超链接中的基本url,但是我真的需要这个吗?
这是我的意思的一个例子.
我有这个:
// base url is only defined once and reused throughout
define("__BASE_URL","http://localhost/test1/");
print '<a href="'.__BASE_URL.'index.php?var1=open/>Open</a>';
(我在脚本中分散了很多.)
我试过了,它有效:
print '<a href="index.php?var1=open/>Open</a>';
那么执行此操作的正确方法是哪一种?我注意到第二种方法甚至可以加载图像,css和javascript文件.
解决方法:
这实际上取决于您如何构建网站.相对URL很棒(通过执行href =“ index.php”,您实际上是在说href =“ ./ index.php”),但是当您开始在多个目录中分布页面时,它们可能会变得混乱.
就我个人而言,我希望所有相对URL都基于根目录,这意味着我所有URL均以斜杠(‘/’)开头.这样,我的脚本是在/还是/ admin中都没有关系,因为我将始终有一个恒定的参考点-文档根目录-而不是结构中的某些相对目录.
第一个示例将文档路径存储在变量中,当您开始开发希望在其中配置路径的大型系统时,它确实开始派上用场.例如,也许您希望系统管理员能够定义从中提取映像的位置或缓存下载的位置.
因此,请真正考虑您的用例和系统大小.
还要记住,如果您将脚本移动到其他服务器上,那么您的URL和目录结构可能会更改,这可能会造成破坏(例如,您可能会将脚本移动到其他子域,文档根目录等). .在这种情况下,很多人会使用Apache的mod_rewrite.
标签:hyperlink,url,html,php 来源: https://codeday.me/bug/20191106/1998945.html