php命名空间和其他知识点

一、命名空间

1.介绍

php命名空间和其他知识点_编码规范

2.声明命名空间

php命名空间和其他知识点_php_02

3.多级命名空间

php命名空间和其他知识点_定义类_03

4.访问空间元素的三种方式

php命名空间和其他知识点_编码规范_04

5.引入命名空间

php命名空间和其他知识点_php_05
php命名空间和其他知识点_php_06

6.引入空间元素

php命名空间和其他知识点_编码规范_07

7.给类、函数取别名

php命名空间和其他知识点_迭代器_08

8.公共空间

php命名空间和其他知识点_命名空间_09

9.命名空间注意事项

php命名空间和其他知识点_定义类_10

二、trait(原型)

php命名空间和其他知识点_命名空间_11
php命名空间和其他知识点_定义类_12
php命名空间和其他知识点_php_13
php命名空间和其他知识点_编码规范_14
php命名空间和其他知识点_迭代器_15
php命名空间和其他知识点_编码规范_16

三、迭代器

1.遍历数组

php命名空间和其他知识点_命名空间_17

2.迭代器

php命名空间和其他知识点_定义类_18

<?php
//定义类实现迭代器接口
class MyClass implements Iterator{
	//$list属性用来保存学生数组
	private $list=array();
	//添加学生
	public function addStu($name) {
		$this->list[]=$name;
	}
	//实现接口中的复位方法
	public function rewind() {
		reset($this->list);
	}
	//验证当前指针是否合法
	public function valid() {
		return key($this->list)!==null;
	}
	//获取值
	public function current() {
		return current($this->list);
	}
	//获取键
	public function key() {
		return key($this->list);
	}
	//指针下移
	public function next() {
		next($this->list);
	}
}

//创建班级
$class=new MyClass();
//添加学生
$class->addStu('tom');
$class->addStu('berry');
$class->addStu('ketty');
//遍历班级
foreach($class as $k=>$v){
	echo "{$k}-{$v}<br>";
}
/*
0-tom
1-berry
2-ketty
*/

四、PSR编码规范

1.概述

php命名空间和其他知识点_定义类_19

2.PSR-1 基础编码规范

php命名空间和其他知识点_定义类_20

3.PSR-2 编码风格规范

php命名空间和其他知识点_迭代器_21