问下众合众安盈一生网友评论,php函数主要学哪几类呢?

阅读(...) 评论()查看:1527|回复:2
中级工程师
学习类之前,先掌握几个函数:
1、 func_get_arg(int $arg_num)
& & 返回参数列表,传回项目
& & 返回类型:
& & 说明:返回自定义函数列表的第$arg_num个参数,默认从0开始,如果$arg_num的值大于实际列表的值,返回
2、 func_get_args()
& & 返回包含函数参数的数组。
& & 说明:返回数组,数组的数目由参数列组成。
3、 func_num_args()
& & 返回传递的函数数量。
4、 function_exists()
& & 检查函数是否存在。&&
/* 演示继承类&&*/
//创建一个基类
& &function __construct( ) { }
& &function myfun()
& && & echo &Class A : 类 A &;
&&function __destruct() {
$a=new A();
$a-&myfun();
//继承 类A 的&&
Class B extends A
& &function __construct() {}& &
& &function myfun($str){
& && & echo A::myfun().&Class B : 类 B &.$str.&\n&;
& &function __destruct(){}
Class C extends B&&//不支持多重继承
& &function __construct() {}
& &function myfun($str){
& && & echo A::myfun().&\n&;&&//这样表示继承至 A (应为父类B继承了A)
& && & echo parent::myfun($str).&\n&; //这样表示继承至 B
& && & echo &Class C : 类 C\n&;
& &function __destruct(){}
/* 测试结果
$m=new C();
$m-&myfun('hello');
/* 演示重载构造函数(变通的方法)*/
&&function d(){
& && &$name=&d&.func_num_args();
& & $this-&$name();
&&function d1() {
& && &echo 'd1';
&&function d2(){
& & echo 'd2';
/* 测试结果
$d=new D(1); //调用d1
$d=new D(1,2); //调用d2
/* 抽象类和接口 */
//先定义抽象类
abstract class E {
& &function myfun(){}
& &function myfun1(){}
//继承抽象类
class F extends E {
& &function myfun(){ echo &类 F 继承抽象类: E\n&; }& &
//继承抽象类
class G extends E {
& &function myfun1(){ echo &类 G 继承抽象类: E\n&; }& &
$E=new E();&&//这样就会出错,抽象类不能被实例化。
$f = new F();
$f-&myfun();
$g = new G();
$g-&myfun1();
// 定义一个接口
interface ih{
& &public function myfun();
& &public function myfun1($a,$b);
class H implements ih {
& & public function myfun()
& && &&&echo &实现接口 ih 函数:myfun &;
& & public function myfun1($a,$b)
& && &&&echo &实现接口 ih 函数:myfun 参数1:&.$a.& 参数2 &.$b;
//以下就会提示错误: Class I contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (ih::myfun)
class I implements ih {& && &&&
& & public function myfun1($a,$b)
& && &&&echo &实现接口 ih 函数:myfun 参数1:&.$a.& 参数2 &.$b;
$h=new H();
$h-&myfun();
$h-&myfun1(1,a);
/* 定义一个枚举enum类 */
class enum {
&&private $__this = array();
&&function __construct()
& && &//调用属性构造器
& & $args = func_get_args();
& & $i = 0;
& && &$this-&__this[$args[$i]] = $i;
& & } while(count($args) & ++$i);
&&//属性构造器
&&public function __get($n){
& & return $this-&__this[$n];
/*&&测试结果
$days = new enum(
& && &&Sunday&,
& && &&Monday&,
& && &&Tuesday&,
& && &&Wednesday&,
& && &&Thursday&,
& && &&Friday&,
& && &&Saturday&
$today = $days-&T
echo &enum : &.$
曾经沧海难为水
提示: 作者被禁止或删除 内容自动屏蔽
嗯,还行!!!}

我要回帖

更多关于 众网友晒绝活 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信