1编程思想
面向过程,面向对象,还一种函数式编程
2数据类型
各种语言大同小异(关键词可能略有区别)这也能反应举一反三
3变量常量
(这里常量指外部常量还有类的内部常量)
变与不变(php是有扩展可以对常量进行强制重定义的不提倡)
4运算符
可以认为是对所有量值进行处理的各种逻辑就像象数学运算一样,只是比学到的数学运算符更丰富
5逻辑顺序控制
简言之:就是在各个分岔路口分叉的判断处理和各种跑道上跑圈的处理
6函数|类与对象
先插入一个命名空间解说:大多数规范化的语言都有命名空间,php是5.几才加的
命名空间就是类似多个房间,每个房间内的人都不能重名。即放置不同的类和函数等
使用时就必须先全路径引入use一下或直接全路径调用
在框架中只要定义了没有调用不到的,关键看你是否把文件include进来了,其次就是调用的对不对
类是显示对象抽象,算是面向对象编程的基础
类里面定义的function就是即类的方法,还是类中的变量即类的属性,只能类中调用
(方法有份静态方法普通方法,变量也是,在调用是有区别,调用时又根据private,protected,public限定了调用的范围这个应该好理解)
区分了函数以及类中的函数后
调用时的用法
函数的调用:
根空间下的函数直接调用比如common中的函数camelize(),其实可以\camelize()调用\表示他所处的命名空间和层级
app\controller\func下定义一个函数test调用时就要\app\controller\func\test(),
也可以相对命名空间路径:比如如果当前的命名空间是app\controller调用test可以是func\test()注意没有反斜杠
类调用时
1先use引用进来进来
useapp\model\order;如果与当前命名空间下的元素重名可以as重命名
然后可以直接$order = new order()2 :也可以直接$order = new app\model\order()
普通方法属性实例化之后就可以直接调用
$order->price();
$order->oneprop静态的方法属性直接就可以调用已经use引入了可以
order::init($order_id);如果没有use引入可以直接
app\model\order::init($order_id)
静态属性order::$staticcprop上面这两种基本是static public
如果是限定protect private基本上就是只能在类内部调用
self::init(),self::$staticprop
各种调用的写法与限定有关系:1命名空间2类中的private,public,protected的限定
决定了调用的路径,可以调用的范围和调用时的规则写法
7 php中各种魔术方法的使用
一般大多数框架有很多灵活性都来自与对魔术方法的灵活运用
8错误处理
try catch的使用
以及set_exception_handler
9 web编程中的session与cookie处理
10其他
泛型,闭包,多线程,异步,同步,协程。。。。。。。。。
各种语言万变不离其宗主要是各种特性在不同语言中展现不同,但基本大同小异。
而且都在向同一个方向靠拢。比如js越来越标准化了也。