首页 > 后端开发 > 正文

php创始人谈框架 php框架需要掌握什么

2023-09-29 04:14:08 | 我爱编程网

我爱编程网小编给大家带来了php创始人谈框架 php框架需要掌握什么相关文章,一起来看一下吧。

php创始人谈框架 php框架需要掌握什么

什么是php框架?

php框架对很多新手而言可能会觉得很难攀越,其实不然,只要知道一个框架的流程,明白原理了,基本类似框架都可以看懂,php框架真正的发展要从php5开始了,其实php4时代就有一些框架,但是因为框架并没有给大家带来多方便而觉得很复杂,速度没有纯php好,所以一直到了php5才有大的发展,php5的面向对象模型的修改对框架的发展起了很大的作用。

2php框架介绍

框架就是通过提供一个开发Web程序的基本架构,PHP开发框架把PHPWeb程序开发摆到了流水线上。换句话说,PHP开发框架有助于促进快速软件开发(RAD),这节约了你的时间,有助于创建更为稳定的程序,并减少开发者的重复编写代码的劳动。这些框架还通过确保正确的数据库操作以及只在表现层编程的方式帮助初学者创建稳定的程序。PHP开发框架使得你可以花更多的时间去创造真正的Web程序,而不是编写重复性的代码。

php创始人谈框架 php框架需要掌握什么

PHP是什么-PHP的架构及原理概述



记得我刚开始学习PHP的时候,许多面试官会经常问我PHP是什么,那时的标准回答是PHP是一种弱类型动态脚本编程语言,开源,
免费,是超文本预处理器的缩写。
这只是很浅的解释,PHP对我来说是一个工具,是我手里的一把锤子,虽然这把锤子时常被调侃为两边都是起钉器的锤子。
多进程模型
PHP是以多进程模型设计的,这样的好处是请求之间互不干涉,一个请求失败也不会对其他进程造成影响,作为最开始仅仅用于个人网站的一个工具集这样的设计并没有什么不妥,随着PHP的应用变大,访问量增加这种方式显然是不合适的,因为启动一个进程的开销对于海量请求是不划算的,所以现在PHP基本都是运行在PHP-FPM的管理下的,这是一个PHP进程管理器,它常驻内存启动一些PHP进程待命,当请求进入时分配一个进程进行处理,PHP进程处理完毕后回收进程,但并不销毁进程,这让PHP也能应对高流量的访问请求。
当然现在也有PHP多线程的解决方案和基于协程的解决方案让PHP更高效的处理WEB请求。
弱类型
与 JAVA、C/C++ 不同,PHP是一门若类型的语言,变量在声明的那一刻是不需要确定它的类型的,而在运行时类型也会发生显式或隐式的类型改变,这也是PHP开发应用迅速、方便的原因之一。
其他
Zend 引擎 + Ext 扩展 的模式降低了内部耦合,可以方便的为PHP本身增加功能和去除功能。
语法简单,没有太多强制规范,编程风格上既可以用过程式、也可以用面向对象的方式进行开发,当然函数式也可以。
以目前的 PHP 主流版本 PHP7 和 PHP5 来说架构是如上图所示,主要有四层体系构成,从下到上依次是 Zend 引擎、Extensions 扩展、SAPI 接口、上层应用。
Zend 引擎
Zend 引擎是 PHP4 以后加入 PHP 的,是对原有PHP解释器的重写,整体使用 C 语言进行开发,也就是说可以把PHP理解成用C写的一个编程语言软件,引擎的作用是将PHP代码翻译为一种叫opcode的中间语言,它类似于JAVA的ByteCode(字节码)。
引擎对PHP代码会执行四个步骤:
词法分析 Scanning(Lexing),将 PHP 代码转换为语言片段(Tokens)。解析 Parsing, 将 Tokens 转换成简单而有意义的表达式。编译 Compilation,将表达式编译成Opcode。执行 Execution,顺序执行Opcode,每次一条,以实现PHP代码所表达的功能。
APC、Opchche 这些扩展可以将Opcode缓存以加速PHP应用的运行速度,使用它们就可以在请求再次来临时省略前三步。
引擎也实现了基本的数据结构、内存分配及管理,提供了相应的API方法供外部调用。
Extensions 扩展
常见的内置函数、标准库都是通过extension来实现的,这些叫做PHP的核心扩展,用户也可以根据自己的要求安装PHP的扩展。
SAPI
SAPI 是 Server Application Programming Interface 的缩写,中文为服务端应用编程接口,它通过一系列钩子函数使得PHP可以和外围交换数据,SAPI 就是 PHP 和外部环境的代理器,它把外部环境抽象后,为内部的PHP提供一套固定的,统一的接口,使得 PHP 自身实现能够不受错综复杂的外部环境影响,保持一定的独立性。
通过 SAPI 的解耦,PHP 可以不再考虑如何针对不同应用进行兼容,而应用本身也可以针对自己的特点实现不同的处理方式。
上层应用
程序员编写的PHP程序,无论是 Web 应用还是 Cli 方式运行的应用都是上层应用,PHP 程序员主要工作就是编写它们。
总结
这些东西如果你学习过 android 开发理解起来显然更容易,因为android的架构和PHP的这种架构看起来很相似。当你理解这些后你就会理解为什么PHP的创始人会说PHP开发其实是不需要框架的,因为PHP的设计本身就是一个类似框架的东西,如果用汽车比喻的话PHP本身就是就是车的骨架,Zend的是引擎,Ext是轮子,方向盘等车的组件,SAPI 就是路。
对于这些内容,可能有的人觉得有点无用,因为很多人偏执的认为自己只是个开车的,为什么开车的要了解车子是怎么跑起来的,对于了解如何制造一辆车更是嗤之以鼻。我曾经也这样认为,直到翻译Laravel文档时,Laravel 的作者给了我一些启发,也把这些话送给看到这个文章的你们:
使用「现实世界」中的任何工具时,如果理解这个工具的运作原理,那么你会更加得心应手的使用这个工具。应用开发也是这样。当你明白你的开发工具如何运行的,你就会对它们的使用游刃有余。
这篇文档的目的是让你更好的理解 Laravel 框架如何进行工作及它的工作原理。通过对框架进行全面的了解,一切都不会那么「神奇」,也将会让你更有自信的构建你的应用。

php创始人谈框架 php框架需要掌握什么

php框架需要掌握什么



php框架需要掌握什么?
下面介绍几个主流的PHP框架。
(1)Zend Framework
Zend Framework是由Zend公司开发的PHP框架,可用于开发Web程序和服务。Zend Framework采用MVC架构模式来分离应用程序中不同的部分,从而方便程序的开发和维护。
(2)CakePHP
CakePHP是一个运用了诸如ActiveRecord、Association Data Mapping、Front Controller和MVC等著名设计模式的快速开发框架。该框架的主要目标是让各种层次的PHP开发人员都能快速灵活地开发健壮的Web应用。
(3)Yii
Yii是一个基于组件的高性能PHP框架,用于开发大型Web应用。Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程。Yii几乎提供了如今Web2.0应用开发所需要的一切功能,事实上,Yii也是最有效率的PHP框架之一。
(4)ThinkPHP
ThinkPHP是一个由国人开发的快速、兼容而且简单的轻量级PHP开发框架。诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP。ThinkPHP遵循Apache2开源协议发布,从Struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式。使用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库)、RoR的ORM映射和ActiveRecord模式,封装了对数据库的常用操作,单一入口模式等。在模板引擎、缓存机制、认证机制和扩展性方面均有独特的表现。
(4)Codelgniter
Codelgniter(CI)也是一个比较老牌的PHP框架。和ZF相反,它非常小巧,核心类库仅有1MB左右。使用起来比较简单,代码框架遵循常见的MVC结构。但是CI的类库封装得还不够精细,某些框架层次感觉设计得过于烦琐;另外CI的文档做得不是很好,特别是缺乏良好的中文文档,这大大阻碍了CI框架在国内的普及。
更多PHP相关知识,请访问PHP中文网! 我爱编程网

以上就是我爱编程网小编给大家带来的php创始人谈框架 php框架需要掌握什么,希望能对大家有所帮助。
与“php创始人谈框架 php框架需要掌握什么”相关推荐
php先开始学哪个框架 php框架需要掌握什么
php先开始学哪个框架 php框架需要掌握什么

php需要学习哪些框架PHP需要学习哪些框架呢?让我们一起了解一下!PHP需要学习的框架有很多,下面为您例举几种常用的框架:国内框架:ThinkPHP、Canphp、KYPHP、InitPHP、SpeedPHP、CdvPHP等。国外框架:ZendFramework、Codelgniter、CakePHP、Symfony、Yii、Seagull、Laravel等。拓展:什么

2023-09-26 22:49:40
PHP个人框架 php框架需要掌握什么
PHP个人框架 php框架需要掌握什么

php框架需要掌握什么php框架需要掌握什么?下面介绍几个主流的PHP框架。(1)ZendFrameworkZendFramework是由Zend公司开发的PHP框架,可用于开发Web程序和服务。ZendFramework采用MVC架构模式来分离应用程序中不同的部分,从而方便程序的开发和维护。(2)CakePHPCakePHP是一个运用了诸如ActiveRecord、

2023-09-02 21:24:17
php需要掌握的框架 php框架需要掌握什么
php需要掌握的框架 php框架需要掌握什么

php有哪些框架?PHP常用框架有:1.thinkphp:国人开发,文档比较全,中文文档。入门比较简单。写法快。2.laravel:国外人写的,入门门槛高。英语文档,社区比较活跃。3.symfony:国外人写的。门槛比较高,英语文档。4.yii:国内人写的,门槛较低。想学习这些框架,可以去黑马程序员看视频,有thinkphp、laravel的框架学习视频。PH

2023-09-18 06:56:16
PHP需要会什么框架 php框架需要掌握什么
PHP需要会什么框架 php框架需要掌握什么

php有哪些框架?PHP常用框架有:1.thinkphp:国人开发,文档比较全,中文文档。入门比较简单。写法快。2.laravel:国外人写的,入门门槛高。英语文档,社区比较活跃。3.symfony:国外人写的。门槛比较高,英语文档。4.yii:国内人写的,门槛较低。想学习这些框架,可以去黑马程序员看视频,有thinkphp、laravel的框架学习视频。PH

2023-09-16 18:07:25
php为什么需要框架 php框架需要掌握什么
php为什么需要框架 php框架需要掌握什么

php需要学习哪些框架PHP需要学习哪些框架呢?让我们一起了解一下!PHP需要学习的框架有很多,下面为您例举几种常用的框架:国内框架:ThinkPHP、Canphp、KYPHP、InitPHP、SpeedPHP、CdvPHP等。国外框架:ZendFramework、Codelgniter、CakePHP、Symfony、Yii、Seagull、Laravel等。拓展:什么

2023-09-21 13:54:17
php需要框架吗 php框架需要掌握什么
php需要框架吗 php框架需要掌握什么

什么是php框架?php框架对很多新手而言可能会觉得很难攀越,其实不然,只要知道一个框架的流程,明白原理了,基本类似框架都可以看懂,php框架真正的发展要从php5开始了,其实php4时代就有一些框架,但是因为框架并没有给大家带来多方便而觉得很复杂,速度没有纯php好,所以一直到了php5才有大的发展,php5的面向对象模型的修改对框架的发展起了很大的作用。2php框架介绍框架

2023-08-27 00:31:05
php框架需要什么知识 php框架需要掌握什么
php框架需要什么知识 php框架需要掌握什么

php框架需要掌握什么php框架需要掌握什么?下面介绍几个主流的PHP框架。(1)ZendFrameworkZendFramework是由Zend公司开发的PHP框架,可用于开发Web程序和服务。ZendFramework采用MVC架构模式来分离应用程序中不同的部分,从而方便程序的开发和维护。(2)CakePHPCakePHP是一个运用了诸如ActiveRecord、

2023-09-30 11:37:21
php框架页 php框架需要掌握什么
php框架页 php框架需要掌握什么

php框架需要掌握什么php框架需要掌握什么?下面介绍几个主流的PHP框架。(1)ZendFrameworkZendFramework是由Zend公司开发的PHP框架,可用于开发Web程序和服务。ZendFramework采用MVC架构模式来分离应用程序中不同的部分,从而方便程序的开发和维护。(2)CakePHPCakePHP是一个运用了诸如ActiveRecord、

2023-09-04 16:49:09