-
<?php class Car { public $speed = 0; //汽车的起始速度是0 public function speedUp() { $this->speed += 10; return $this->speed; } } //定义继承于Car的Truck类 class Truck extends Car { public function speedUp(){ $this->speed = parent::speedUp()+50; /*上面的parent::静态方法是用于子类调用父类的方法 *这里是意思是先调用父类的speedUp()方法,此时$speed==10 *再在10的基础上累加50,此时$speed==60 *大概就是这个意思吧 *其实这一节没有说清楚parent关键字的用法和子类的声明方法 *如果细心的同学就会发现,前面有一节出现了“extends” *那个类就是子类 */ //return $this->speed; //这里返不返回都一样,程序运行到这的时候$speed已经等于60了,而且下面有个echo语句 } } $car = new Truck(); $car->speedUp(); echo $car->speed;查看全部
-
<?php class Car { private $speed = 0; static $_car = null; public static function get_duixiang(){//通过静态方法得到一个唯一的对象 if(empty(self::$_car)){//empty是判断$_car是否为空,因为是静态方法,所以只能用"self::" self::$_car = new Car();//只要在static静态方法中就只能用“::”静态方法 } return self::$_car;//静态方法只能用"self::"返回对象 } public function getSpeed() {//public公开方法,直接调用且可以用“this”伪变量和“->”对象成员访问符 return $this->speed; } protected function speedUp() {//protected受保护方法,只能在Car类以及子类和父类使用 $this->speed += 10; } //增加start方法,使他能够调用受保护的方法speedUp实现加速10 public function start(){ $this->speedUp(); } public function __destruct(){ print "\n讯幻网 - www.xhkj5.com"; } public function __construct(){ echo "构造对象开始\n"; } } //$car = new Car();为了让全局只有唯一的一个car对象所以只能用下面静态方法 $__car = Car::get_duixiang(); $__car->start(); echo $__car->getSpeed();查看全部
-
preg_quote($p, '/')向p中每个正则表达式语法中的字符前增加一个反斜线查看全部
-
如果模式中包含分隔符,则分隔符需要使用反斜杠(\)进行转义。 如:/http:\/\//查看全部
-
具有构造函数的类,会在每次对象创建的时候调用该函数 析构函数指的是当某个对象的所有引用被删除,或者对象被显式的销毁时会执行的函数。查看全部
-
__construct 调用构造函数 __destruct 解析构造函数查看全部
-
_construct()定义一个构造函数查看全部
-
元字符与转义 正则表达式中具有特殊含义的字符称之为元字符,常用的元字符有: \ 一般用于转义字符 ^ 断言目标的开始位置(或在多行模式下是行首) $ 断言目标的结束位置(或在多行模式下是行尾) . 匹配除换行符外的任何字符(默认) [ 开始字符类定义 ] 结束字符类定义 | 开始一个可选分支 ( 子组的开始标记 ) 子组的结束标记 ? 作为量词,表示 0 次或 1 次匹配。位于量词后面用于改变量词的贪婪特性。 (查阅量词) * 量词,0 次或多次匹配 + 量词,1 次或多次匹配 { 自定义量词开始标记 } 自定义量词结束标记 //下面的\s匹配任意的空白符,包括空格,制表符,换行符。[^\s]代表非空白符。[^\s]+表示一次或多次匹配非空白符。 $p = '/^我[^\s]+(苹果|香蕉)$/'; $str = "我喜欢吃苹果"; if (preg_match($p, $str)) { echo '匹配成功'; } 元字符具有两种使用场景,一种是可以在任何地方都能使用,另一种是只能在方括号内使用,在方括号内使用的有: \ 转义字符 ^ 仅在作为第一个字符(方括号内)时,表明字符类取反 - 标记字符范围 其中^在反括号外面,表示断言目标的开始位置,但在方括号内部则代表字符类取反,方括号内的减号-可以标记字符范围,例如0-9表示0到9之间的所有数字。 //下面的\w匹配字母或数字或下划线。 $p = '/[\w\.\-]+@[a-z0-9\-]+\.(com|cn)/'; $str = "我的邮箱是Spark.eric@imooc.com"; preg_match($p, $str, $match); echo $match[0];查看全部
-
public 定义一个公共属性 protected 定义受保护的属性 private 定义私有属性查看全部
-
创建一个空数组 $arr = array(); 输出数组键及对应的值 print_r()查看全部
-
使用关键字static修饰的方法,称之为静态方法,静态方法不需要实例化对象,可以通过类名直接调用,操作符为双冒号::。 class Car { public static function getName() { return '汽车'; } } echo Car::getName(); //结果为“汽车”查看全部
-
在类中定义的变量称之为属性,通常属性跟数据库中的字段有一定的关联,因此也可以称作“字段”。属性声明是由关键字 public,protected 或者 private 开头,后面跟一个普通的变量声明来组成。属性的变量可以设置初始化的默认值,默认值必须是常量。 默认都为public,外部可以访问。一般通过->对象操作符来访问对象的属性或者方法,对于静态属性则使用::双冒号进行访问。当在类成员方法内部调用的时候,可以使用$this伪变量调用当前对象的属性。查看全部
-
关联数组是指数组的键是字符串的数组。 如: $fruit = array( 'apple'=>"苹果", 'banana'=>"香蕉", 'pineapple'=>"菠萝" );查看全部
-
foreach循环可以将数组里的所有值都访问到,用foreach循环访问索引数组里的值。 例如: $fruit=array('苹果','香蕉','菠萝'); foreach($fruit as $k=>$v){ echo '<br>第'.$k.'值是:'.$v; }查看全部
-
索引数组赋值有三种方式: 第一种:用数组变量的名字后面跟一个中括号的方式赋值,当然,索引数组中,中括号内的键一定是整数。比如,$arr[0]='苹果'; 第二种:用array()创建一个空数组,使用=>符号来分隔键和值,左侧表示键,右侧表示值。当然,索引数组中,键一定是整数。比如,array('0'=>'苹果'); 第三种:用array()创建一个空数组,直接在数组里用英文的单引号'或者英文的双引号"赋值,数组会默认建立从0开始的整数的键。比如array('苹果');这个数组相当于array('0'=>'苹果');查看全部
举报
0/150
提交
取消