PHP说简单,但是要精通也不是一件简单的事。我们除了会使用之外,还得知道它底层的工作原理。
PHP是一种适用于web开发的动态语言。具体点说,就是一个用C语言实现包含大量组件的软件框架。更狭义点看,可以把它认为是一个强大的UI框架。
了解PHP底层实现的目的是什么?动态语言要像用好首先得了解它,内存管理、框架模型值得我们借鉴,通过扩展开发实现更多更强大的功能,优化我们程序的性能。
1. PHP的设计理念及特点
多进程模型:由于PHP是多进程模型,不同请求间互不干涉,这样保证了一个请求挂掉不会对全盘服务造成影响,当然,随着时代发展,PHP也早已支持多线程模型。
弱类型语言:和C/C++、Java、C#等语言不同,PHP是一门弱类型语言。一个变量的类型并不是一开始就确定不变,运行中才会确定并可能发生隐式或显式的类型转换,这种机制的灵活性在web开发中非常方便、高效,具体会在后面PHP变量中详述。
引擎(Zend)+组件(ext)的模式降低内部耦合。
中间层(sapi)隔绝web server和PHP。
语法简单灵活,没有太多规范。缺点导致风格混杂,但再差的程序员也不会写出太离谱危害全局的程序。
2. PHP的四层体系
PHP的核心架构如下图:
你是否有这样的烦恼,想学习高级技术,缺乏好的高级学习资料,收集了部分12年网站架构师授课的TP5、laravel、swoole、swoft、高并发、分布式等资料,现在免费分享给大家,官方群:820469789,大牛带你装逼带你飞