PHP函数:PHP_SELF
php_self是php的内置变量,记作$php_self,其作用是实现“页内跳转”。这里的页内跳转不同等于html的书签之类的跳转,而是php程序通过URL的尾参数的改变在同一个程序里提供不同的Web内容。试比较以下两个URL:
http://www.gxblk.com/pc/index.php
http://www.gxblk.com/pc/index.php?page=2
以上两个URL,其区别是第二个URL地址多一个参数(?page=2),我们在实际打开它们时,在浏览器中得到的内容是不一样的,而点击时它们在同一页内跳转。这是使用php内置变量$php_self实现的,用户编写的php程序将根据index.php尾部参数的不同而生成不同的内容,但都使用同一个网页程序(index.php),故我们称之为“页内跳转”,实际上,它生成的已经是另外一个Web文档了。
从上面第二个URL地址我们已经知道,内置变量$php_self用问号引导参数,具体表示格式如下:
$php_self?变量名=值(实例:$php_sefl?id=0)
问号后面的变量名是自定义的,通常,根据需要命名为阅读性强一些的英文名称(可以是缩写)。比如说,我们让链接指向程序的某个功能块是完成一次删除操作,那么,我们可以命名为$del,体现在代码里则是$php_self?del=值,如果点击了该链接,程序就执行删除操作(当然,删除操作代码得另外编写):
链接代码:
print "<ahref=\"$php_self?del=true\">删除选定内容</a>";
跳转代码:
if($del=="true") {
//这里是删除代码
}
$php_self可以带多个参数,第一个参数使用问题(?)引导,后面的参数使用“与”号(&)引导,格式和举例如下:
【语法】$php_self?变量1=值&变量2=值&变量3=值
【例子】$php_self?user=blackhorse&id=write&page=0
原则上,$php_self的尾部参数书写时应连在一起,但与号连接的变量可用空格或其他有效符号(如+号)隔开——有时我们的确需要将它们隔开,例如要想通过arv的验证,符号&会有些影响,隔开后生成的html代码才被arv所承认。
$php_self是php的一个十分有用的内置变量,通常用于分页、执行预定义操作等。它所带的尾部参数中的各变量在php中使用$来读取,如以下地址:
http://www.gxblk.com/pc/index.php?page=3
我们将这样从以上地址读取页码并显示该页面的内容:
$conts=echo_conts($page);
echo_conts是一个自编函数,它用于显示每一页的内容,而变量$page的值是关键所在,它决定程序从库文件中提取的内容范围。
PHP函数:PHP_SELF的更多相关文章
- 【PHP】详解 $_SERVER 函数中QUERY_STRING和REQUEST_URI、SCRIPT_NAME、PHP_SELF区别
实例:1.http://localhost/index.php/Home/Home/index.html $_SERVER['QUERY_STRING'] = ""; $_SERV ...
- $_SERVER["SCRIPT_NAME"]、$_SERVER["PHP_SELF"]、$_SERVER["QUERY_STRING"]、$_SERVER["REQUEST_URI"]
1.$_SERVER["SCRIPT_NAME"] 说明:包含当前脚本的路径 2.$_SERVER["PHP_SELF"] 说明:当前正在执行脚本的文件名 3. ...
- PHP获取当前url路径的函数及服务器变量:QUERY_STRING、REQUEST_URI、SCRIPT...
1,$_SERVER["QUERY_STRING"]说明:查询(query)的字符串 2,$_SERVER["REQUEST_URI"]说明:访问此页面所需的U ...
- php : 常用函数
常用函数: <?php /** * 获取客户端IP * @return [string] [description] */ function getClientIp() { $ip = NULL ...
- 【PHP】分页条函数封装
这两天在学习PHP 想做一个前端后台都包含的网站 看了一些视频发现大牛们都是将封装起来实现代码的重用性 本人技拙也写了个分页条函数的封装 分页条在用PHP网站开发中十分常用 通过封装代码来提高网站开发 ...
- php-长文章分页函数
<?php function ff_page($content,$page) { global $expert_id; $PageLength = 2000; //每页字数 $CLength = ...
- PHP的$_SERVER['PHP_SELF']造成的XSS漏洞攻击及其解决方案
$_SERVER['PHP_SELF']简介 $_SERVER['PHP_SELF'] 表示当前 PHP文件相对于网站根目录的位置地址,与 document root 相关. 假设我们有如下网址,$_ ...
- isset 和empty 两个函数的用法
关于用php 获取当前脚本的url很多朋友会说很简单,但是要获取很详细的就要经过多次判断哦. $PHP_TIME = time();$PHP_SELF = isset($_SERVER['PHP_SE ...
- ThinkPHP 3.2.3 自动加载公共函数文件的方法
方法一.加载默认的公共函数文件 在 ThinkPHP 3.2.3 中,默认的公共函数文件位于公共模块 ./Application/Common 下,访问所有的模块之前都会首先加载公共模块下面的配置文件 ...
随机推荐
- UI层调用WCF服务实例(源码)
WCF原理性的东西,暂时还没有深入研究,只是在公司的项目中使用到了,会调用,然后再多做了一些了解,现在将它抽出来了一个小实例,写了一个WCF的demo. 我写的这个WCF.Demo主要包括数据契约和服 ...
- QueryString传值的加密与解密方法 .
//加密 Response.Redirect("DetailInfo.aspx?id=" + Convert.ToBase64String(System.Text.Encoding ...
- 额定能量不得超过160Wh, 等同是多少mAh电池容量?
额定能量不得超过160Wh, 等同是多少mAh电池容量?行动电源容量标示, 正确应该是用Whr(Wh)瓦特小时来标示, 不过坊间标榜行动电源的容量通常是用xx000mAhWHr瓦特小时, 即是行动电源 ...
- PHP 单一入口
单一入口概述 单一入口的应用程序就是说用一个文件处理所有的HTTP请求,例如不管是列表页还是文章页,都是从浏览器访问index.php文件,这个文件就是这个应用程序的单一入口. 打个比方,大家都要上W ...
- [学习笔记]设计模式之Facade
写在前面 为方便读者,本文已添加至索引: 设计模式 学习笔记索引 Facade(外观)模式定义了一个高层接口,它能为子系统中的一组接口提供一个一致的界面,从而使得这一子系统更加容易使用.欢迎回到时の魔 ...
- ES6-个人学习笔记二--解构赋值
第二期,解构赋值如果能够熟练应用确实是个十分方便的功能,但是过分的依赖和嵌套只会让代码理解和维护起来十分困难,是个体现高逼格的表达式呢~ 1,解构赋值的基础 //定义:es6运行按照一定模式,从数组或 ...
- sublime text 自动保存
perferences->Settings - User添加下面两句话: { "save_on_focus_lost": true, "atomic_save&qu ...
- jquery插件-validate
1.引入js,css 下载地址:http://plugins.jquery.com/validate/ 2.设置验证规则:input的class添加以下验证属性 3.设置不符合规则的提示信息:添加da ...
- Python中lstrip使用心得
lstrip方法用来去除字符串从首位开始与之相匹配的字符.例如: a = 'c' b = 'calendar' print(b.lstrip(a)) 输出结果是 'alendar'. 之前我也一直是这 ...
- LightOJ_1248 Dice (III)
题目链接 题意: 给一个质地均匀的n的骰子, 求投掷出所有点数至少一次的期望次数. 思路: 这就是一个经典的邮票收集问题(Coupon Collector Problem). 投掷出第一个未出现的点数 ...