php5.3新特性

<?php
/*
 *  PHP 命名空间可以解决以下两类问题:
 *	用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。
 *	为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。
 * */
namespace News\Space;
include './Mysql.php';
class Space {
	
}
new \News\Space\Mysql;
/*
 * 2.三元运算符增加了一个快捷书写方式
 * */
//原格式
$pag = 2;
$pag = $pag ? $pag : 1;
//新格式
$pag = $pag ? : 1;
echo $pag, '<br/>';
/*
 *3.匿名函数
 * 好处是把主动权交给用户 让他自己操作
 * */
$arr = array(1, 2, 3);
function curd($arr, $callback) {
	foreach ($arr as $k => $v) {
		$arr[$k] = $callback($v);
	}
	return $arr;
}

print_r(curd($arr, function($v) {
	return $v + 1;
}));
echo '<br/>';
print_r(curd($arr, function($v) {
	return $v * 2;
}));
echo '<br/>';
/*
 *4.PHP 5.3.0中增加了一个static关键字来引用当前类,即实现了延迟静态绑定:
 * */
class A {
	public static function who() {
		echo 'parent';
	}

	public static function test() {
		// 这里实现了延迟的静态绑定
		static::who();
	}

}

class B extends A {
	public static function who() {
		echo 'son';
	}

}

B::test();
echo '<br/>';
/*
 * 5.在类外也可使用const来定义常量
 * */
const PI = 3.14;
echo PI, '<br/>';
/*
 * 6.goto 操作符可以用来跳转到程序中的另一位置。该目标位置可以用目标名称加上冒号来标记,
 * 而跳转指令是 goto 之后接上目标位置的标记。PHP 中的 goto 有一定限制,目标位置只能位于同一个文件和作用域,
 *  也就是说无法跳出一个函数或类方法,也无法跳入到另一个函数。
 *  也无法跳入到任何循环或者 switch 结构中。可以跳出循环或者 switch,
 *  通常的用法是用 goto 代替多层的 break。
 * */
goto a;
phpinfo();
a:
echo 'Bar', '<br/>';
/*
 * 7.PHP中原本有一个魔术方法__call(),当代码调用对象的某个不存在的方法时该魔术方法会被自动调用。
 * 新增的__callStatic()方法则只用于静态类方法。当尝试调用类中不存在的静态方法时,__callStatic()魔术方法将被自动调用。
 * */
class testClass1 {
	public function __construct() {
		echo 2, '<br/>';
	}

	public function __invoke() {
		echo 1, '<br/>';
	}

}

$n = new testClass1;
$n();
class testClass2 {
	public static function __callStatic($name, $arguments) {
		echo '调用类中不存在的静态方法为', $name, '<br/>';
	}

}

testClass2::test();
/*
 * 8.支持动态调用静态方法
 * */
class Test1 {
	public static function t() {
		echo '5.3以后支持动态调用静态方法', '<br/>';
	}

}

$t1 = 't';
Test1::$t1();
/*
 * 如果出现报错 在当前目录建立一个文件为Mysql.php
 * 内容如下:
 * namespace News\Space;
	class Mysql{
		
   }	
 * PHP 5.3是一个有很大改进的PHP版本,但它仍然遵循着PHP的设计原则—强大、易用。
 * PHP5.3一方面在面向对象开发等方面有所加强,使PHP更合适于进行企业应用开发,
 * 另一方面也增加了不少实用的语法特性和新扩展。php7更猛
 *
 * */
?>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值