php5概念总结之一
/***********by garcon1986*******************/ 1. $this变量是对当前对象的引用,$this-var; $this-method(); 2. php5中的变量和常量称为property,函数称为method. 声明属性: //invalid public $var = 'hel'.'lo'; public $var2 = EOD hello EOD; public
/***********by garcon1986*******************/
1. $this变量是对当前对象的引用,$this->var; $this->method();
2. php5中的变量和常量称为property,函数称为method.
声明属性:
//invalid
public $var = 'hel'.'lo';
public $var2 =
hello
EOD;
public $var3 = 1+2;
public $var4 = self::StaticMethod();
public $var5 = $myvar;
//valid
public $var6 = myConstant;
public $var7 = array(true, false);
public $var8 =
hello
EOD;
3. 继承(inheritance): 使用extends
class A {
function A(){
}
}
class B extends A {
function B(){
}
}
4. parent:: 访问父类中的方法或属性
5. static属性或方法不需要实例化类就能访问。
self:: 访问本类的静态变量。
实例化的类对象中不能访问静态属性,但是能访问静态方法。
静态属性不能使用->访问。
静态调用非静态方法会发生E_STRICT级别的警告。
例子:
class Foo
{
public static $my_static = 'foo';
public function staticValue() {
return self::$my_static;
}
}
class Bar extends Foo
{
public function fooStatic() {
return parent::$my_static;
}
}
print Foo::$my_static . "/n";
$foo = new Foo();
print $foo->staticValue() . "/n";
print $foo->my_static . "/n"; // Undefined "Property" my_static
print $foo::$my_static . "/n";
$classname = 'Foo';
print $classname::$my_static . "/n"; // As of PHP 5.3.0
print Bar::$my_static . "/n";
$bar = new Bar();
print $bar->fooStatic() . "/n";
?>
6. Define - 定义一个有名字的常量。
define("CONSTANT","hello world");
echo CONSTANT; //输出 hello world
echo Constant; //输出 "Constant" and issues a notice.
define("GREETING", "Hello you.", true);
echo GREETING; // outputs "Hello you."
echo Greeting; // outputs "Hello you."
true会使字母不敏感,false会使字符敏感。默认是字符敏感,即false。
7. defined()用于验证某个常量是否存在。
if(defined('CONSTANT')){
echo CONSTANT; //output "hello world"
}
8. const 用于声明常量;
常量不需要使用$;
常量的值必须是常量表达式,不能是变量,属性,算术表达式,函数等。
如: const constant1 = "test of contant";
9. constant() 用于得到常量的值
define("mx",100);
echo mx;
echo constant("mx");
10. __autoload():
test1:
function __autoload($class_name) {
require_once $class_name . '.php';
}
$obj = new huanhang;
test2:
function __autoload($class_name) {
require_once $class_name . '.php';
}
class huanhang{
function huanghang(){
echo "huanhang sleep";
}
}
$obj = new huanhang();
$obj -> huanghang();
11. __construct
__construct 构造方法,当一个对象创建时调用此方法,使用此方法的好处是:可以使构造方法有一个独一无二的名称,无论它所在的类的名称
是什么.这样你在改变类的名称时,就不需要改变构造方法的名称
__destruct 析构方法,PHP将在对象被销毁前(即从内存中清除前)调用这个方法
12. abstract: PHP5中推出了抽象类和抽象方法。
抽象类不能被实例化。
任何类包含了一个以上的抽象方法,这个类也必须声明为抽象类。
继承抽象类时,父类中所有的抽象方法必须在子类中定义;而且这些方法的可见性必须跟父类的方法保持一致或者更少的限制。如:父类的方
法是protected,子类的方法就得是protected或public。
13. interface :
接口通过interface关键字定义,但是其中的方法不需要定义内容。
接口中所有的方法必须为public
所有的方法必须在类中实现implemented,否则会产生严重错误。
一个类不能实现两个接口,因为会造成混淆。
interface也能通过extends被继承
14. visibility可见性
类的属性有public,protected,private. 通过var定义等同于public
类的方法有public,protected,private. 默认是public
15. overloading重载:指动态的创建类属性和方法。通过魔术函数实现。
所有的重载方法都必须被声明为public。
PHP5提供了一种迭代(iteration)对象的功能,就像使用数组那样,可以通过foreach 来遍历对象中的属性。默认情况下,在外部迭代只能
得到外部可见的属性的值。
16. design pattern 设计模式
工厂模式(factory)允许你在代码执行时实例化对象。
单例模式(singleton)用于为一个类生成一个唯一的对象.最常用的地方是数据库连接。
17. 魔术方法(magic method)
__construct, __destruct (参看 构造方法和析构方法), __call, __callStatic, __get, __set, __isset, __unset (参看 重载),
__sleep, __wakeup, __toString, __set_state 和 __clone 等方法在PHP中被称为“魔术方法”(Magic methods)。
PHP把所有以__(两个下划线)开头的类方法当成魔术方法。所以你定义自己的类方法时,不要以 __为前缀。
18. Final
如果父类中的方法被声明为final,则子类无法覆盖该方法;
如果一个类被声明为final,则不能被继承。
19. clone
$copy_of_object = clone $object;

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

php5和php8的区别在性能、语言结构、类型系统、错误处理、异步编程、标准库函数和安全性等方面。详细介绍:1、性能提升,PHP8相对于PHP5来说在性能方面有了巨大的提升,PHP8引入了JIT编译器,可以对一些高频执行的代码进行编译和优化,从而提高运行速度;2、语言结构改进,PHP8引入了一些新的语言结构和功能,PHP8支持命名参数,允许开发者通过参数名而不是参数顺序等等。

Linux下system()函数的总结在Linux系统中,system()函数是一个非常常用的函数,它可以用于执行命令行命令。本文将对system()函数进行详细的介绍,并提供一些具体的代码示例。一、system()函数的基本用法system()函数的声明如下:intsystem(constchar*command);其中,command参数是一个字符

元宇宙是利用技术与现实世界映射与交互的虚幻世界。解析1元宇宙【Metaverse】是充分利用技术方式进行链接与创造的,与现实世界映射与交互的虚幻世界,拥有最新型社会发展体制的数据生活空间。 2元宇宙本质上是对现实世界的虚拟技术、数字化过程,需要对内容生产、经济系统、客户体验和实体世界内容等进行大量改造。 3但元宇宙的发展趋势是循序渐进的,是在共享的基础设施、标准规定及协议的支撑下,由许多工具、平台不断结合、进化而最终成型。补充:元宇宙是什么构成的1元宇宙由Meta和Verse构成,Meta是超越,V

Java语言是当今世界上最常用的面向对象编程语言之一。类的概念是面向对象语言中最重要的特性之一。一个类就像一个对象的蓝图。例如,当我们想要建造一座房子时,我们首先创建一份房子的蓝图,换句话说,我们创建一个显示我们将如何建造房子的计划。根据这个计划,我们可以建造许多房子。同样地,使用类,我们可以创建许多对象。类是创建许多对象的蓝图,其中对象是真实世界的实体,如汽车、自行车、笔等。一个类具有所有对象的特征,而对象具有这些特征的值。在本文中,我们将使用类的概念编写一个Java程序,以找到矩形的周长和面

Gunicorn的基本概念和作用Gunicorn是一个用于在PythonWeb应用程序中运行WSGI服务器的工具。WSGI(Web服务器网关接口)是Python语言定义的一种规范,用于定义Web服务器与Web应用程序之间的通信接口。Gunicorn通过实现WSGI规范,使得PythonWeb应用程序可以被部署和运行在生产环境中。Gunicorn的作用是作

了解SpringMVC的关键特性:掌握这些重要的概念,需要具体代码示例SpringMVC是一种基于Java的Web应用开发框架,它通过模型-视图-控制器(MVC)的架构模式来帮助开发人员构建灵活可扩展的Web应用程序。了解和掌握SpringMVC的关键特性将使我们能够更加有效地开发和管理我们的Web应用程序。本文将介绍一些SpringMVC的重要概念

OracleRAC(RealApplicationClusters)简介及核心概念随着企业数据量的不断增长和对高可用性、高性能的需求日益突出,数据库集群技术变得越来越重要。OracleRAC(RealApplicationClusters)就是为了解决这一问题而设计的。OracleRAC是Oracle公司推出的一种高可用性、高性能的集群数据库解

php5改80端口的方法:1、编辑Apache服务器的配置文件中的端口号;2、辑PHP的配置文件以确保PHP在新端口上工作;3、重启Apache服务器,PHP应用程序将开始在新的端口上运行。
