4K+ 次浏览
简介 $_SERVER 是一个超全局变量,它包含有关 HTTP 头、路径和脚本位置等信息。所有与服务器和执行环境相关的都包含在这个关联数组中。此数组中的大多数条目都是由 Web 服务器填充的。 5.4.0 之前的 PHP 版本包含 $HTTP_SERVER_VARS,它包含相同的信息,但现在已被删除。以下是此数组中一些重要的成员 PHP_SELF − 存储当前执行脚本的文件名。例如,本地服务器文档根目录的 test 文件夹中的脚本会将其路径返回如下所示: 示例 这会在浏览器中使用 https:///test/testscript.php URL 返回以下输出:/test/testscript.php SERVER_ADDR − ... 阅读更多
2K+ 次浏览
简介 在 PHP 中,可以使用 class 关键字定义用户自定义的复合数据类型。类的新的实例是一个对象。对象的特征根据类的定义,可能包含属性、常量和方法成员。类成员的可访问性(也称为可见性)取决于其定义中附加的可见性前缀关键字。PHP 有三个可见性关键字 - public、private 和 protected。声明为 public 关键字的类成员可以从任何地方访问。受保护的成员可以在其类和继承类中访问。另一方面,私有成员只能在... 阅读更多
210 次浏览
简介 PHP 中的延迟静态绑定功能用于在静态继承中引用调用的类。当调用静态方法时,类的名称与作用域解析运算符 (::) 一起使用,而在其他实例方法的情况下,我们使用对象的名称来调用它们。static:: 将不会使用定义方法的类来解析,而是将使用运行时信息来计算。对当前类的静态引用将使用该函数所属的类来解析,而不是它被定义的位置。示例 在下面的代码中,父类使用 self:: 前缀调用静态方法。当... 阅读更多
1K+ 次浏览
简介 PHP 中的 serialize() 函数可以获得任何对象的字节流形式的字符串表示。对象的全部属性变量都包含在字符串中,方法不会保存。此字符串可以存储在任何文件中。要从字节流中检索对象,可以使用 unserialize() 函数。在调用 unserialize() 函数之前,必须提供相应的类定义。示例 首先,让我们序列化以下类的对象并将字符串存储在一个文件中。在当前文件夹中,将创建 obj.txt 文件。要反序列化,以下代码将从给定文件中读取的字节流中重建对象。示例 阅读更多
7K+ 次浏览
简介 在 PHP 中,双冒号 :: 定义为作用域解析运算符。当我们想要访问类级别定义的常量、属性和方法时使用它。在类定义之外引用这些项时,将类名与作用域解析运算符一起使用。此运算符也称为 Paamayim Nekudotayim,在希伯来语中意为双冒号。语法 类内 要在任何方法内部访问类级别项,使用关键字 self 类内 如果子类重写了父类方法,并且您需要调用相应的父方法,则必须在前面加上 parent 关键字和作用域... 阅读更多
8K+ 次浏览
简介 在类内声明的数据成员称为属性。属性有时也称为属性或字段。在 PHP 中,属性由一个访问说明符关键字限定,例如 public、private 或 protected。属性的名称可以是 PHP 中任何有效的标签。每个类的实例的属性值可能不同。这就是为什么它有时被称为实例变量的原因。在任何实例方法内部,都可以通过调用作为伪变量 $this 可用的对象的上下文来访问属性。如果属性声明为 public,则可以使用 -> 运算符通过对象访问它。如果... 阅读更多
3K+ 次浏览
简介 在 PHP 中,对象默认情况下按引用传递。在此,引用是一个别名,它允许两个不同的变量写入相同的值。对象变量不包含对象本身作为值。它只包含一个对象标识符,允许使用它来查找实际的对象。当对象作为参数发送、返回或分配时,不同的变量不是别名——相反,它们包含标识符的副本,指向同一个对象。示例 PHP 有 spl_object_hash() 函数,它返回对象的唯一哈希 ID。在下面的代码中,两个对象变量引用同一个... 阅读更多
简介 PHP 有一个比较运算符 ==,可以使用它来执行对两个对象变量的简单比较。如果两者都属于同一个类并且相应属性的值相同,则返回 true。PHP 的 === 运算符比较两个对象变量,如果且仅当它们引用同一个类的同一个实例时,返回 true。我们使用以下两个类来使用这些运算符比较对象。示例 同一个类的两个对象 示例 $a=new test1(10, 20); $b=new test1(10, 20); echo "同一个类的两个对象"; echo "使用 == 运算符:"; var_dump($a==$b); echo "使用 === 运算符:"; var_dump($a===$b); 输出 同一个类的两个对象 使用 == 运算符... 阅读更多
9K+ 次浏览
简介 PHP 中的魔术方法是旨在执行某些任务的特殊方法。这些方法的名称以双下划线 (__) 作为前缀。所有这些函数名称都是保留的,不能用于与关联的魔法功能不同的任何其他用途。类中的魔术方法必须声明为 public。这些方法充当拦截器,当满足某些条件时会自动调用。PHP 中目前可以使用以下魔术方法 __sleep public __sleep ( void ) : array 类中的 serialize() 方法检查它是否具有函数名 __sleep()。如果是,则在任何序列化之前执行该函数。它... 阅读更多
591 次浏览
简介 接口是面向对象编程的一个重要特性,它可以指定类要实现的方法,而无需定义如何实现它们。PHP 通过 interface 关键字支持接口。接口类似于类,但方法没有定义体。接口中的方法必须是 public。实现这些方法的继承类必须使用 implements 关键字而不是 extends 关键字定义,并且必须提供父接口中所有方法的实现。语法 实现类必须定义接口中的所有方法,否则 PHP 解析器将引发异常。示例 演示 输出 错误... 阅读更多