博客列表 >匿名函数,命名空间,类与对象——2019年9月29日23时23分

匿名函数,命名空间,类与对象——2019年9月29日23时23分

Song的博客
Song的博客原创
2019年10月12日 23:27:21477浏览

一、匿名函数的应用场景

1、匿名函数作为值来使用

$sum = function($a,$b){
		return $a*$b;
	};
	echo $sum (3,6);

运行实例 »

点击 "运行实例" 按钮查看在线实例

2、匿名函数作为回调参数使用。

$arr = [4,6,3,8,5];
	usort($arr,function($a,$b){
		return $a - $b;
	});
	echo '<pre>' . print_r($arr,true);
	echo '<hr>';

运行实例 »

点击 "运行实例" 按钮查看在线实例

3、获取父作用域中的变量,即闭包

function demo(){
		$telephone = '138 8888 8888';
		return function () use ($telephone){
			return $telephone;
		};
	}
		echo demo()();

运行实例 »

点击 "运行实例" 按钮查看在线实例

二、命名空间的意义

解决全局成员的命名冲突问题,全局成员分为: 类 、 函数、 常量。

创建一个命名空间

//namespace: 创建命名空间, 必须是脚本的第一行代码
	namespace _0929;

运行实例 »

点击 "运行实例" 按钮查看在线实例

三、类与对象

类是对象的模板

创建类

	//namespace: 创建命名空间, 必须是脚本的第一行代码
	namespace one{
		class test 
		{
			//...
		}
	}
	
	namespace two{
		class test
		{
			//...
		}
	}
	
	namespace three{
		class test
		{
			//...
		}
	}
	//创建全局空间
	namespace {
		class test
		{
			//...
		}
	}

运行实例 »

点击 "运行实例" 按钮查看在线实例

类与对象的创建

namespace _0929;
	class Demo3
	{
		//给变量一个“属性”名称
		public $a = '平板电脑';
		public $b = '1999';
	}
	// 1. 类的实例化
	$obj = new Demo3();
	// 2. 用对象访问类中成员
	echo '商品名称:'. $obj->a;
	echo '<br>';
	echo '商品价格:'. $obj->b;

运行实例 »

点击 "运行实例" 按钮查看在线实例

总结

1、匿名函数也叫闭包函数,允许临时创建一个没有指定名称的函数,经常用作回调函数参数的值。

2、命名空间解决了php全局成员的命名冲突的问题,借鉴了文件目录的基本思想。命名空间使用 "namespace" 关键字声明。

3、类与对象。定义用”class“,实例化用“new”。类中的属性需要通过实例化对象来访问。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议