当前位置:  编程技术>php
本页文章导读:
    ▪php入门教程(十七) php常见魔术方法      本节内容: php常见魔术方法 1,__toString _toString 方法在将一个对象转化成字符串时自动调用 __toString() 方法用于一个类被当成字符串时应怎样回应。例如 echo $obj; 应该显示些什么。此方法必.........
    ▪php入门教程(十六) php常见关键字      本节内容: php常见关键字 1,Final 关键字 PHP 5 新增了一个 final 关键字。如果父类中的方法被声明为 final,则子类无法覆盖该方法。如果一个类被声明为 final,则不能被继承。 语法: final cl.........
    ▪php入门教程(十五) php的继承性      本节内容: php面向对象的继承性 说到php面向对象编程中继承: 1. 面向对象的三大特性之一 2. 开放性、可扩充性 3. 增加代码的重用性 4. 提高了软件的可维护性 5. 继承就是用子类去”扩.........

[1]php入门教程(十七) php常见魔术方法
    来源: 互联网  发布时间: 2013-12-24

本节内容:
php常见魔术方法

1,__toString
_toString 方法在将一个对象转化成字符串时自动调用
__toString() 方法用于一个类被当成字符串时应怎样回应。例如 echo $obj; 应该显示些什么。此方法必须返回一个字符串,否则将发出一条 E_RECOVERABLE_ERROR 级别的致命错误。

2,__call
在对象中调用一个不存在方法时,__call() 会被调用。

例子:
 

代码示例:
<?php 
class all { 
  function __call($name,$arguments) { 
    print("no no!"); 
  } 
} $x = new all(); 
$x->getname(); 
 
?> 
 

$name 参数是要调用的方法名称。$arguments 参数是一个枚举数组,包含着要传递给方法 $name 的参数。

3. __autoload()

在PHP4中,当使用一个类的时候,必须将该类所以文件使用include或require加进来,这样就可以使用类了。
而对于PHP5来说也可以使用在PHP4里面的方式,将类文件包进来,但当有了__autoload之后,这种情况就可以靠编写规则也实现。

例子:
 

代码示例:
<?php 
function __autoload($className){ 
    echo $className."<br>"; 
        include "./".$className.".class.php"; 
    }  // www.
 
    $o=new One(); 
 
    $o->fun1(); 
 
    Two::fun2(); 
 
    $t=new Three(); 
 
    $t->fun3(); 

因此,对于PHP5的autoload来说,当加载2个以上的文件或考虑到以后的扩展时或代码规范来说可以使用。

对于一般情况,则没有必要。

但是如果同时使用多个类,加载不同的类文件,对于autoload来说就有必要,只要写入相应的加载规则即可。

>>> 查看更多 php入门教程 <<<


    
[2]php入门教程(十六) php常见关键字
    来源: 互联网  发布时间: 2013-12-24

本节内容:
php常见关键字

1,Final 关键字

PHP 5 新增了一个 final 关键字。如果父类中的方法被声明为 final,则子类无法覆盖该方法。如果一个类被声明为 final,则不能被继承。
语法:
final class A{}
final不能用来修饰属性

例子:
 

代码示例:
<?php
class A1{ 
final public function getnum($conunt){ 
    return $conunt*3; 

}  // www.
class B1 extens A1{ 
//这里父类的getnum方法使用了final,所以这里无法再重写getnum 
//public function getnum($conunt){ 
//    return $conunt*4; 
//} 

2,Static(静态)关键字
声明类属性或方法为静态,就可以不实例化类而直接访问。静态属性不能通过一个类已实例化的对象来访问(但静态方法可以)。
为了兼容 PHP 4,如果没有指定访问控制,属性和方法默认为公有。
由于静态方法不需要通过对象即可调用,所以伪变量 $this 在静态方法中不可用。
静态属性不可以由对象通过 -> 操作符来访问。

例子:
 

代码示例:
<?php
class text{ 
  public static $a;  
  public static function all(){ 
    self::$a='www'; 


text::all(); 
echo text::$a; 
 

 

同样可以使用static关键字来限制变量 这个时候变量不会一直保持上一次负值时候的值

3,类常量(const)

在某些情况下,可能有这样的需求:当不希望一个成员变量被修改,希望该变量的值是固定不变的,这时可以使用const常量(常量名应该全用大写,并且不带$符号,常量不可以加修饰符)
语法:
const 常量名=常量值;  //必须赋初值,因为常量是不能修改的
调用:
类名::常量名[本类内部可用self::常量名]   或者  接口名::常量名  //接口中只能使用常量,不能使用变量

例子:
 

代码示例:
<?php
class A{ 
    const TAX_RATE=1.0; 
    function paytax($salary){ 
        return $salary*self::TAX_RATE; 
    } 

$a=new A(); 
echo $a->paytax(100); 

注:
1、常量可以被子类继承
2、常量是属于某个类的,而不属于某个对象

>>> 查看更多 php入门教程 <<<


    
[3]php入门教程(十五) php的继承性
    来源: 互联网  发布时间: 2013-12-24

本节内容:
php面向对象的继承性


说到php面向对象编程中继承:
1. 面向对象的三大特性之一
2. 开放性、可扩充性
3. 增加代码的重用性
4. 提高了软件的可维护性
5. 继承就是用子类去”扩展“父类
6  PHP和Java属于单继承, 同一个类只能有一个父类

一、类继承的应用
 1. 声明一个子类,使用 extends 关键字 去继承(扩展)一个父类
 2.  子类可以从父类,继承所有的内容,包括成员属性,成员方法, 构造方法 ..., 在子类中都可以直接使用
 
二、访问类型控制
虽然子类可以从父类中继承所有内容,但private的成员,只能在本类中使用,子类中也不能使用封装时,即可以让自己类的内部可以访问,也让子类可以用,但类的外部不能使用, private --> protected

例子:
 

代码示例:
<?php
class Person { 
    protected $name; 
    protected $age; 
    protected $sex; 
 
    function __construct($name, $age, $sex){ 
        $this->name=$name; 
        $this->sex=$sex; 
        $this->age=$age; 
 
        echo "mmmmmmmmmmmmmmmmm<br>"; 
    }
 
    protected function say(){ 
        echo "我的名-{$this->name}:,我的年龄:{$this->age},我的性别:{$this->sex}.<br>"; 
    }  www.
 
     function eat(){ 
        echo "yyyyyyyyyyy"; 
    } 
 
    function run(){ 
     
    } 
  } 
 
  class Student extends Person { 
      var $school; 
    function __construct($name, $age, $sex, $school){ 
        parent::__construct($name, $age, $sex); 
        $this->school=$school; 
    } 
    function study(){ 
        echo "{$this->name}在学习.<br>"; 
     
        $this->eat(); 
    } 
 
    public function say(){ 
        parent::say(); 
        echo "我所在的学校{$this->school}<br>"; 
    }
   
  } 
$s=new Student("张3", 22, "男", "QingHua");

>>> 查看更多 php入门教程 <<<


    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组排序方法大全(脚本学堂整理奉献) iis7站长之家
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3