-
//创建可抛出一个异常的函数 function checkNum($number){ if($number>1){ throw new Exception("异常提示-数字必须小于等于1"); } return true; } //在 "try" 代码块中触发异常 try{ checkNum(2); //如果异常被抛出,那么下面一行代码将不会被输出 echo '如果能看到这个提示,说明你的数字小于等于1'; }catch(Exception $e){ //捕获异常 echo '捕获异常: ' .$e->getMessage(); } index.php <?php $filename = 'test.txt'; try { if (!file_exists($filename)) { throw new Exception('文件不存在'); } } catch(Exception $e) { echo $e->getMessage(); }查看全部
-
__construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(),__unset(), __sleep(), __wakeup(), __toString(), __invoke(), __set_state(),__clone() 和 __debugInfo() 等方法在 PHP 中被称为"魔术方法" 魔术方法是PHP面向对象中特有的特性。它们在特定的情况下被触发,都是以双下划线开头,利用魔术方法可以轻松实现PHP面向对象中重载 $b=clone $a;复制对象 $str=serialize($a);将对象序列化为字符串用于存储或传递数据 $b对象序列化,可以通过serialize方法将对象序列化为字符串,用于存储或者传递数据,然后在需要的时候通过unserialize将字符串反序列化成对象进行使用。=unserialize($str);反序列化对象,将上面已序列化为字符串反序列化为对象查看全部
-
__set,__get,__isset,__unset来分别实现对不存在属性的赋值、读取、判断属性是否设置、销毁属性。 方法的重载通过__call来实现,当调用不存在的方法的时候,将会转为参数调用__call方法,当调用不存在的静态方法时会使用__callStatic重载。 这里的重载不是c++或者java意义上的重载,而是php的一个默认函数__call($name,$args),当你要调用的函数不存在时,函数名(speedDown)传给形参$name,里面的参数传给形参$args,然而内部具体执行需要自己编写。查看全部
-
子类调用父类方法parent::function查看全部
-
拥有私有构造函数的类不允许直接实例化,只用通过静态方法来获取实例 如:$name = Name::method(); $car = new Car(); $car->start(); echo $car->getSpeed(); 说的是$car调用start的方法,即调用speedUp方法,将$speed增加10。然后$car调用getSpeed方法,自身($car)访问$speed的值(为10),并且返回值到调用函数的代码行(即赋值自己)。由此$car变量才有了值。于是eche得10查看全部
-
静态方法中不能用伪变量$this,可以使用self/parent来调用本类/父、子的静态变量以及方法。 静态属性 self::$speed 非静态属性 $this->speed 静态方法 Car::getSpeed() 非静态方法 $car = new Car(); $car->getSpeed();查看全部
-
PHP5可以在类中使用__construct()定义一个构造函数,具有构造函数的类,会在每次对象创建的时候调用该函数,因此常用来在对象创建的时候进行一些初始化工作。 在子类中如果定义了__construct则不会调用父类的__construct,如果需要同时调用父类的构造函数,需要使用parent::__construct()显式的调用。 析构函数 __destruct( ):使用后,对某个对象索引页被删除,或者对象被显示的销毁时会执行的函数查看全部
-
$car->speedUp(); // 实例调用静态方法 echo $car::$speed; // 实例调用静态属性查看全部
-
访问控制的关键字代表的意义为: public:公开的;protected:受保护的;private:私有的 默认都为public,外部可以访问。 一般通过->对象操作符来访问对象的属性或者方法, 对于静态属性则使用::双冒号进行访问。 当在类成员方法内部调用的时候,可以使用$this伪变量调用当前对象的属性。 注://只有Public属性变量或者方法允许外部调用; //受保护的属性不允许外部调用 //私有属性不允许外部调用查看全部
-
//定义一个类 class Car { //定义属性 public $name = '汽车'; //定义方法 public function getName() { //方法内部可以使用$this伪变量调用对象的属性或者方法 return $this->name; } } 要创建一个类的实例,可以使用new关键字创建一个对象。 $car = new Car(); //也可以采用变量来创建 $className = 'Car'; $car = new $className(); echo $car->getName();//显示外部通过对象去调用内部的方法 echo $car->name;//显示外部通过对象去调用类里面的属性查看全部
-
通常定义一个汽车类的方法为: class Car { $name = '汽车'; function getName() { return $this->name; } } 类是一类东西的结构描述,而对象则是一类东西的一个具体实例,例如汽车这个名词可以理解为汽车的总类,但这辆汽车则是一个具体的汽车对象。 对象通过new关键字进行实例化: $car = new Car(); echo $car->getName();查看全部
-
第一章:php中数组知识点总结 1.数据分为索引数组和"关联"数组(根据它们的键来分类的):索引数组的键为整数,从零开始;关联数组的键为字符串 2.初始化两种数组,访问数组中的元素,用循环遍历数组中的元素 3.print_r通过 "array(键=>值,键=>值....)"的方式输出数组中的元素 $arr=array("a","b","c"); //使用for循环遍历 for($i=0;$i<$arr.length;$i++){ echo "数组中的元素是:" . $arr[$i]; } //使用foreach循环遍历 foreach($arr as $k=>$v){ echo "键为:".$k."值为:".$v; }查看全部
-
用数组变量的名字后跟中括号+键的方式来访问数组中的值,键使用单引号或者双引号括起来。 比如: $fruit = array('apple'=>"苹果",'banana'=>"香蕉",'pineapple'=>"菠萝"); $fruit0 = $fruit['banana']; print_r($fruit0);查看全部
-
关联数组赋值有两种方式: 第一种:用数组变量的名字后面跟一个中括号的方式赋值,当然,关联数组中,中括号内的键一定是字符串。比如,$arr['apple']='苹果'; 第二种:用array()创建一个空数组,使用=>符号来分隔键和值,左侧表示键,右侧表示值。当然,关联数组中,键一定是字符串。比如,array('apple'=>'苹果');查看全部
-
PHP有2种数组: 索引数组:是整数,并且键顺序是从0开始的。 关联数组:键是字符串。查看全部
举报
0/150
提交
取消