PHP 中的 $_SERVE['PHP_SELF'] 的一个注意点

PHP 中的 $_SERVE['PHP_SELF'] 的一个注意点

使用的是 Apache 搭配 PHP 7

手册:

当前执行脚本的文件名,与 document root 有关。例如,在地址为 
http://example.com/foo/bar.php 的脚本中使用 $_SERVER['PHP_SELF'] 将得到 
/foo/bar.php。__FILE__ 常量包含当前(例如包含)文件的完整路径和文件名。  从 PHP 4.3.0 
版本开始,如果 PHP 以命令行模式运行,这个变量将包含脚本名。之前的版本该变量不可
用。 

$_SERVE[‘PHP_SELF’] 读取的是当前执行脚本的文件名
不是简单的理解成 url 中的文件名
因为 url 中的文件名可能不存在

注意下面这种情况:
在 Apache 的配置文件中,有设置文件夹的默认打开文件

<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>

比如我这里设置的是 index.html 和 index.php 两个文件
那么在访问文件夹而没有指定访问文件的时候
会自动访问文件夹下的 index.html
没有 index.html , 就访问 index.php
都没有,就不访问任何文件

比如现在的 url 是
http://localhost/
那么此时,url 中并没有体现出是访问哪一个文件
但是假如在根目录下有 index.php
这个时候就自动访问 index.php
而此时通过 $_SERVER[‘PHP_SELF’] 是可以获取到当前文件名的
即使这个文件名并没有在 url 上显示出来
在这里插入图片描述

<?php

echo $_SERVER['PHP_SELF'] ;

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值