phpself,php self this

PHP中this,self和static的区别

1、下一次依据上一次结果值;static函数与普通函数区别:static函数在内存中只有一份,普通函数在每个被调用中维持一份拷贝。

2、在变量的前面加上static 就构成了静态变量(static 变量)。static变量和普通变量的区别在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。

3、staticpublic与publicstatic是等价的,这两者只是两个修饰符的顺序不同。

4、)、变量会被放在程序的全局存储区中,这样可以在下一次调用的时候还可以保持原来的赋值。这一点是它与堆栈变量和堆变量的区别。2)、变量用static告知编译器,自己仅仅在变量的作用范围内可见。

PHP中的_SERVER[PHP_SELF]与$PATH_INFO

_SERVER[‘PHP_AUTH_DIGEST’]:当作为 Apache 模块运行时,进行 HTTP Digest 认证的过程中,此变量被设置成客户端发送的“Authorization”HTTP 头内容(以便作进一步的认证操作)。

$_SERVER[PATH_TRANSLATED] — 当前脚本所在文件系统(不是文档根目录)的基本路径。这是在服务器进行虚拟到真实路径的映像后的结果。

PHP实现网址伪静态的方法:使用函数【$_SERVER[PATH_INFO]】操作实现;配置【.htaccess】来,网站建设时使用【mod_rewrite】模块来实现伪静态。PHP实现网址伪静态的方法:根据$_SERVER[PATH_INFO]来操作实现。

$_SERVER[PHP_SELF] -- 获取当前正在执行脚本的文件名 $_SERVER[SERVER_PROTOCOL] -- 请求页面时通信协议的名称和版本。例如,“HTTP/0”。$_SERVER[REQUEST_TIME] -- 请求开始时的时间戳。

在php中self与$this的分别

区别分析:thisthis是在实例化的时候来确定指向谁。所以说,this就是指向当前对象实例的指针,不指向任何其他对象或类。

先初步解释一下,this是指向当前对象的指针(可以看成C里面的指针),self是指向当前类的指针,parent是指向父类的指针。 我们这里频繁使用指针来描述,是因为没有更好的语言来表达。关于指针的概念,大家可以去参考百科。

self 不使用前面的 $,因为 self 不意味着是一个变量而是类结构本身。而 $this 引用一个特定的变量,所以有前面的 $ 。

在php中定义的作用域有self和parent两种(在php6中提供了static作用域)。self:表示当前类的作用域,与this不同的是它不表示类的某个特定实例,在类之外的代码中不能使用self,而且它不能识别自己在继承中层次的位置。

this是这个类现在创建的对象。而不是单纯的只指静态非静态。self从理论上在php里是可以调用任何东西的。。php6可以支持直接调用静态和非静态。因为他是和:符配合的。。只要是这个类里面的任何成员和方法都能调用。。

PHP中所有以 $ 开头的都是变量,所以可以知道 $this 其实是一个变量,而 self 是常量。常量在代码解析阶段就可以确定其值,而变量需要解析之后运行才可以确定。

关于PHP的$PHP_SELF的问题

不见得那样写就会错。如果配置中开了全局变量。一样会有输出。错误的真正原因是。你用的是小写。echo $PHP_SELF;预定义变量要用大写。楼主记好。而且不支持你这样用。存在很大的安全问题。支持楼上的用法。

// Child contructor!staticstatic 常规用途是修饰函数或变量使其成为类函数和类变量,也可以修饰函数内变量延长其生命周期至整个应用程序的生命周期。但是其与 self 关联上是PHP 3以来引入的新用途:静态延迟绑定。

如果单纯的echo $PHP_SELF;将不会有任何值输出。echo $_SERVER[PHP_SELF];打印当前的脚本名称。说到安全,就你这点上来看,可能可以讲到的是PHP的数组对比变量比较安全讲吧。

两者的区别在于含义不同:假如命令行的地址是:xxx 那么:$_SERVER[HTTP_HOST]==[PHP_SELF]==/index.php所以前者是主机地址,后者是脚本文件的绝对路径。

从PHP4开始,要用$_REQUEST[name]获取提交的参数,你的代码在PHP3中没问题,但在PHP4和PHP5中, $name没有赋值,所以不能输出。

self从理论上在php里是可以调用任何东西的。。php6可以支持直接调用静态和非静态。因为他是和:符配合的。。只要是这个类里面的任何成员和方法都能调用。。你把php所有错误提示关闭。就可以执行。。

PHP预定义变量$_SERVER中的PHP_SELF和SCRIPT_FILENAME有什么详细区别...

$_SERVER[SCRIPT_FILENAME] -- 当前执行脚本的绝对路径名。如返回E:\\server\\index.php 2$_SERVER[SERVER_ADMIN] -- 该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。

两者的区别在于含义不同:假如命令行的地址是:xxx 那么:$_SERVER[HTTP_HOST]==[PHP_SELF]==/index.php所以前者是主机地址,后者是脚本文件的绝对路径。

_SERVER[‘PHP_SELF’]:相对于网站根目录的路径及 PHP 程序名称,与 document root 相关。_SERVER[‘HTTP_REFERER’]:链接到当前页面的前一页面的 URL 地址。

_SERVER[SCRIPT_NAME] 包含当前脚本的路径。这在页面需要指向自己时非常有用。_SERVER[REQUEST_URI] 访问此页面所需的URI。如“/index.html”。

如果某些 variables_order 中的变量没有设定,它们的对应的 PHP 预定义数组也是空的。PHP 超全局变量 GLOBALS 包含一个引用指向每个当前脚本的全局范围内有效的变量。该数组的键名为全局变量的名称。

$_SERVER[REQUEST_METHOD]//的意思是访问页面时的请求方法 。$_SERVER[REQUEST_METHOD]这个变量表示的是表单提交数据的方式,get或者post。

未经允许不得转载:便宜VPS网 » phpself,php self this