当前位置:首页 » 编程语言 » php5全栈

php5全栈

发布时间: 2025-08-03 14:08:35

php常用框架(php常用框架有哪些)

php开发类似大众点评用什么框架

用的是Phalcon框架。

Phalcon是基于C语言的拥有高性能和低功耗等特点的开源PHP开发框架。它是一个全栈的PHP框架,为开发者提供了网站及应用开发所需的大量高级工具。Phalcon中的所有函数都以PHP类的方式呈现,开发者既无需学习和使用C语言,又无需担心性能的问题。性能优越是Phalcon受欢迎的最主要的因素。

PHP中的各种框架

CodeIgniter、CakePHP、ZendFramework、Symfony这几个是国外的,你可以参考下

CodeIgniter

优点:

1.配置简单,全部的配置使用PHP脚本来配置,执行效率高;具有基本的路由功能,能够进行一定程度的路由;具有初步的Layout功能,能够制作一定程度的界面外观;数据库层封装的不错,具有基本的MVC功能

2.快速简洁,代码不多,执行性能高,框架简单,容易上手,学习成本低,文档详细;自带了很多简单好用的library,框架适合小型应用

缺点:

1.把Model层简单的理解为数据库操作

2.框架略显简单,只能够满足小型应用,略微不太能够满足中型应用需要

评价:

总体来说,拿CodeIgniter来完成简单快速的应用还是值得,同时能够构造一定程度的layout,便于模板的复用,数据操作层来说封装的不错,并且CodeIgniter没有使用很多太复杂的设计模式,执行性能和代码可读性上都不错。至于附加的library也还不错,简洁高效。

CakePHP

优点:

1.CakePHP是最类似于RoR的框架,包括设计方式,数据库操作的ActiveRecord方式;设计层面很优雅,没有自带多余的library,所有的功能都是纯粹的框架,执行效率还不错;数据库层的hasOne,hasMany功能很强大,对于复杂业务处理比较合适;路由功能,配置功能还不错;自动构建脚手架(scaffold)很强大;适合中型应用;基本实现过了MVC每一层;具有自动操作命令行脚本功能;

2.文档比较全,在国内推广的比较成功,大部分都知道CakePHP,学习成本中等

缺点:

1.CakePHP非常严重的问题是把Model理解为数据库层操作,严重影响了除了数据库之外的操作能力

2.CakePHP的cache功能略显薄弱,配置功能稍嫌弱;CakePHP不适合大型应用,只适合中型应用,小型应用来说略微的学习成本高了点

评价:

总体来说CakePHP框架代表了PHP框架很重要的一个时代和代表,并且目前发挥着很重要的作用,不少自己写的框架都模仿了CakePHP的方式,是个里程碑式的产品;CakePHP透露着RoR的敏捷开发方式和把数据库操作认为是唯一Model的设计思想,作为开发快速应用和原型是绝好的工具;同样,用来做Web2.0网站的开发框架,也是值得选择的。

【ZendFramework】

优点:

1.官方出品,自带了非常多的library,框架本身使用了很多设计模式来编写,架构上很优雅,执行效率中等;MVC设计中,比较简洁,具有路由功能,配置文件比较强大(能够处理XML和phpINI),各种library很强大,是所有PHP框架中各种功能最全面的,包括它不仅是一个框架,更是一个大类库(取代PEAR),这是它的主要特色;能够直观的支持除数据库操作之外的Model层(比CodeIgniter和CakePHP强),并且能够很轻易的使用Loader功能加载其他新增加的Class;Cache功能很强大,从前端Cache到后端Cache都支持,后端Cache支持Memcache、APC、SQLite、文件等等方式;数据库操作功能很强大,支持各种驱动(适配器)

2.文档很全,在国内社区很成熟,并且目前不少Web2.0网站在使用,学习成本中等

缺点:

1.MVC功能完成比较弱,View层简单实现(跟没实现一样),无法很强大的控制前端页面

2.没有自动化脚本,创建一个应用,包括入口文件,全部必须自己手工构建,入门成本高

3.ZendFramework作为一个中型应用框架问题不大,也能够勉强作为大型应用的框架,但是作为一个很成熟的大型PHP框架来说,还需要一些努力

评价:

作为官方出品的框架,ZendFramework的野心是可以预见的,想把其他框架挤走,同时封装很多强大的类库,能够提供一站式的框架服务,并且他们的开发团队很强大,完全足够有能力开发很强大的产品出来,所以基本可以确定的是ZendFramework前途无量,如果花费更多的时间去完善框架。同样的,ZendFramework架构本身也是比较优雅的,说明Zend官方是有很多高手的,设计理念上比较先进,虽然有一些功能实现的不够完善,比如View层,自动化脚本等等,这些都有赖于未来的升级。总体来说ZendFramework是最值得期待的框架,当然,你目前要投入你的项目中使用也是完全没问题的。

【Symfony】

优点:

1.Symfony是我了解的PHP框架中功能最强大的,而且我使用时间比较长,但是很多功能还是没有挖掘出来;它完整实现了MVC三层,封装了所有东西,包括$_POST,$_GET数据,异常处理,调试功能,数据检测;包含强大的缓存功能,自动加载Class(这个功能很爽),强大的i18n国家化支持;具有很强大的view层操作,能够零碎的包含单个多个文件;非常强大的配置功能,使用yml配置能够控制所有框架和程序运行行为,强大到让人无语;能够很随意的定义各种自己的class,并且symfony能够自动加载(autoload)这些class,能够在程序中随意调用;包含强大的多层级项目和应用管理:Project--Application--Mole--Action,能够满足一个项目下多个应用的需要,并且每层可以定义自己的类库,配置文件,layout;非常强大的命令行操作功能,包括建立项目、建立应用、建立模块、刷新缓存等等;

2.Symfony绝对是开发大型复杂项目的首选,因为使用了Symfony,将大大节约开发成本,并且多人协作的时候,不会出现问题,在Project级别定义好基础Class以后,任何模块都能够重用,大大复用代码

缺点:

1.数据库操作model采用了重量级的propel和creole,不过在我测试的版本中已经把他们移到了addon里,可用可不用

2.缓存功能无法控制,每次开发调试总是缓存,需要执行symfonycc,symfonyrc来清除和重建缓存;

3.效率不是很高,特别是解析模板和读取配置文件的过程,花费时间不少;

4.学习成本很高,并且国内没有成熟的社区和文档,连中文手册都没有,相应的要掌握所有功能,需要花费比较多的时间

评价:

Symfony绝对是企业级的框架,唯一能够貌似能够跟java领域哪些强悍框架抗衡的东西;强悍的东西,自然学习复杂,但是相应的对项目开发也比较有帮助,自然是推荐复杂的项目使用Symfony来处理,觉得是值得,后期的维护成本比较低,复用性很强。相应的如果使用Symfony的应该都是比较复杂的互联网项目,那么相应的就要考虑关于数据库分布的问题,那么就需要抛弃Symfony自带的数据库操作层,需要自己定义,当然了,Symfony支持随意的构造model层。

【总评】

以上数款框架,各有特色,而且都是开源项目,不过框架针对的项目不一样,一般来说CodeIngiter比较适合小型项目,CakePHP和ZendFramework比较适合中型项目,Symfony比较适合大型重量级项目,在项目选型的时候,要充分考虑框架的可以定制性、扩展性,因为每个项目都无法确定你是否会随着需求的变化进行改变。

相对来说,ZendFramework和Symfony应对变化的能力比较强,特别是能够随意定制model层的Class,能够非常方便增加自己业务或者数据处理类,我是个人比较推荐在中大型项目中使用的框架。CodeIngiter和CakePHP在中小型项目中同样能够发挥重大作用,快速开发和原型构建,非常适合目标不清晰的原型项目的开发。了解一个框架最好的方式就是使用它,学习它最好的方式就是看视频。

仁者见仁,智者见智,在项目挑选框架的时候,请先认真考察项目的需求和未来的变化,然后选择合适的框架,让项目开发速度和后期维护性得到一个合理的平衡,当然了,也许,自己写一个框架更适合。

PHP框架有哪些?

使用PHP框架可以更快更简单的部署项目并提高开发效率,但学习使用这些框架需要付出额外的学习成本。

最流行的PHP框架包括:Symfony,ZendFramework,Laravel、Phalcon、CodeIgniter、Yii、ThinkPHP等等。

php除了mvc还有什么架构

1.Yii

Yii是一个基于组件的高性能的PHP的框架,用于开发大规模Web应用。Yii采用严格的OOP编写,并有着完善的库引用以及全面的教程。从MVC,DAO/ActiveRecord,widgets,caching,等级式RBAC,Web服务,到主体化,I18N和L10N,Yii提供了今日Web2.0应用开发所需要的几乎一切功能。而且这个框架的价格也并不太高。事实上,Yii是最有效率的PHP框架之一。

2.CodeIgniter

CodeIgniter是一个应用开发框架——一个为建立PHP网站的人们所设计的工具包。其目标在于快速的开发项目:它提供了丰富的库组以完成常见的任务,以及简单的界面,富有条理性的架构来访问这些库。使用CodeIgniter开发可以往项目中注入更多的创造力,因为它节省了大量编码的时间。

3.CakePHP

CakePHP是一个快速开发PHP的框架,其中使用了一些常见的设计模式如ActiveRecord,AssociationDataMapping,FrontController以及MVC。其主要目标在于提供一个令任意水平的PHP开发人员都能够快速开发web应用的框架,而且这个快速的实现并没有牺牲项目的弹性。

4.PHPDevShell

PHPDevShell是一个开源(GNU/LGPL)的快速应用开发框架,用于开发不含Javascript的纯PHP。它有一个完整的GUI管理员后台界面。其主要目标在于开发插件一类的基于管理的应用,其中速度、安全、稳定性及弹性是最优先考虑的重点。其设计形成了一个简单的学习曲线,PHP开发者无需学习复杂的新术语。PHPDevShell的到来满足了开发者们对于一个轻量级但是功能完善,可以无限制的进行配置的GUI的需求。

5.Akelos

AkelosPHP框架是一个基于MVC设计模式的web应用开发平台。基于良好的使用习惯,使用它可以完成如下任务:

◆方便的使用Ajax编写views

◆通过控制器管理请求(request)及响应(response)

◆管理国际化的应用

◆使用简单的协议与模型及数据库通信

你的Akelos应用可以在大多数共享主机服务供应方上运行,因为Akelos对服务器唯一的要求就是支持PHP。因此,AkelosPHP框架是理想的用于发布单独web应用的框架,因为它不需要非标准PHP配置便能运行。

6.Symfony

Symfony是一个用于开发PHP5项目的web应用框架。

这个框架的目的在于加速web应用的开发以及维护,减少重复的编码工作。

Symfony的系统需求不高,可以被轻易的安装在任意设置上:你只需一个Unix或Windows,搭配一个安装了PHP5的网络服务器即可。它与差不多所有的数据库兼容。Symfony的价位不高,相比主机上的花销要低得多。

对于PHP开发者而言,使用Symfony是一件很自然的事,其学习曲线只有短短一天。干净的设计以及代码可读性将缩短开发时间。开发者可以将敏捷开发的原理(如DRY,KISS或XP等)应用在其中,将重点放在应用逻辑层面上,而不用花费大量时间在编写没完没了的XML配置文件上。

Symfony旨在建立企业级的完善应用程序。也就是说,你拥有整个设置的控制权:从路径结构到外部库,几乎一切都可以自定义。为了符合企业的开发条例,Symfony还绑定了一些额外的工具,以便于项目的测试,调试以及归档。

7.Prado

PRADO团队由一些PRADO狂热者组成,这些成员开发并推动PRADO框架以及相关项目的进行。

PRADO的灵感起源于ApacheTapestry。从04年开始,PRADO成为SourceForge上的开源项目之一。这个项目目前进展到了3.x版本。

8.Zend

作为PHP艺术及精神的延伸,Zend框架的基础在于简单,面向对象的最佳方法,方便企业的许可协议,以及经过反复测试的快速代码库。Zend框架旨在建造更安全,更可靠的Web2.0应用及web服务,并不断从前沿厂商(如Google,Amazon,Yahoo,Flickr,StrikeIron和ProgrammableWeb等)的API那里吸收精华。

9.ZooP

ZoopPHP框架,意为Zoop面向对象的PHP框架。

这是个稳定,可伸缩并可移植的框架。从诞生到现在的5年间,已经在不少产品开发中被使用。Zoop是一个快速,有效并干净的框架。它的伸缩性很好,你可以只安装你需要的功能。

对代码并不很熟悉的开发者也可以通过Zoop快速的开发安全的web应用。熟练的开发者则可以更加将Zoop的弹性利用到极致。

Zoop建议将display,logic以及数据层(MVC)分开使用。

Zoop由很多组件和项目集合而成,其中包括smarty和prototypeAJAX框架,PEAR模块等。高效的核心组件提供了很多你原本需要自己编码来实现的功能。Zoop内置的纠错功能可以通过配置实现生产环境下的错误日志生成,这个错误日志提供了很多信息,可读性很高,可以更轻易的寻找并排除错误。

Zoop的一个特别之处在于其GuiControls,在PHP中是一个相当革新的想法。它提供了很多formwidgets与验证完整的集合到一起,并形成了一个可以轻松打造个性化GuiControls的框架。

10.QPHP

QPHP,意为快速PHP,它是一个与ASP.NET类似的MVC框架。基本上它是这样一个情况:

◆整合了Java和C#的美感

◆除去了在其他PHP框架中使用的Perl形式的意义含糊的语言

◆大量基于OOP的概念

⑵ 很多人都在反映,PHP现在很难找到工作,真的是这样吗

是的,五年PHP,疫情前辞职了,现在待业快5个月了,找工作好难

先说结果,只会php的开发人员,现在确实比较难找工作。

第一:需求少了

由于疫情影响,有一些小公司倒闭了,现在的情况是人多公司少,竞争相当激烈,如果你只会php那你的竞争力比较低,现在都往全栈开发方向发展,就算你不往全栈发展,最起码你要懂点linux 系统 或者 除了php之外另外一种流行的编程语言。

第二:函数命名不规,传参位置不一

先来看网上一个段子:

三个程序员坐在格子间里编程。
A程序员一言不发,他用的是python.
B程序员写一会儿就按一下编译,然后就玩会儿手机。他用的是C++。
C程序员坐在那里浏览网页,不时飞快的键入一些字符。
经理看到,怒道:你怎么不干活,尽在上网。
C回答:我在查PHP实现这个功能需要用什么函数 。

尽快是一个段子,不过 php 开发者 在开发过程中,确实经常要上网去搜索 某个功能用的是哪个函数,如果不上网去搜索,我估计开发起来要困难很多 ,资深开发者除外。

第三: php 不再是 ’世界上最好的语言‘

当年在 web 开发领域,php 可以说是没有对手,绝大部分的web开发都是 用的 php 语言 ,但是随着现在架构演变,以及新的编程语言出现,严重冲击了php的地位。

php 除了在web 开发领域比较擅长之外,在其他领域就不太行了,比如现在比较火的大数据,人工智能等等。

php 的性能不太好,且对异步支持的不太好,虽然后来出现了 swoole等 优秀的扩展,但很多人还是选择了 其他编程语言代替,比如 golang

老铁,确实是这样的,PHP岗位比较少,在北京用PHP的大中互联网公司都很少,除非是已经在阿里P8-9以上的人,做管理,要是还是做coding的话,职业发展空间就相对较少,因为年轻人多,公司少,这就是现实。

说个简单的数据吧,这是我在某网站输入PHP后得到的猎头岗位数目,地点选择的是北京,也就4家企业,猎头岗位数量其实一定程度上是反应了整体大概的数量。

然后我们再看JAVA的,每页20个岗位,一共5页,也就是说大概100个猎头岗位。

有部分公司转向GO,截图不方便,大概是20来个猎头岗位。

当然不是说PHP的人就不行了,实际上有的独特项目就是PHP开发的,后面公司想要找这方面的人,还没发搞定,因为技术语言不一,但是整体来说 PHP找工作跟难是真的。

php目前确实不好找工作了。前后台分离模式崛起以后,可以说现在后端基本上被java垄断了。那么再说说java,这门语言出现的时间比较长了,所以你可以轻松找到1个10几年经验的java工程师,目前java从业者也是最多的。换句话说就是,java这么好招,我还要php干啥。不过也不能说php一无是处,毕竟是小公司的创业首选。拥有丰富经验的phper,还是能够找到工作的。

疫情之下,工作难找,吃饭又变难了

阿里巴巴在10多年前,淘宝的后端就是php,但是后面渐渐被替换为Java,至今里边php的应用早已荡然无存,足以证明php没落。

像我司京东,至少我目前接触的项目,后端全是Java,没有看到一点php的应用、文档等。

php的工作还是有的,至少我去年校招的时候投递网络,里边的岗位就有php开发岗,但是招聘人数特别的少,应是维护之前老的项目要用到。现在新的项目,后端挺少人会考虑php的,更多的是Java、Go、Python、C++等。

“php是世界上最好的语言”,这一句常挂程序员嘴边的赞美,我觉得更多的是对php没落的嘲讽,但也不比较真,顺应技术发展的潮流学习新知识,才是正确的选择。

很高兴收到邀请,我谈谈个人的看法。主要分为2点。
一、PHP语言在国内的使用情况
国内的大厂普遍使用Java开发比较多一点,而这点PHP就有点小众了。大厂生存抗压能力强所以裁员会比较少点。小公司抗压能力弱,在面对收入减少的情况下,不得不进行裁员。
二、今年疫情带来的特殊情况
企业生存压力大,加上疫情原因,导致利润减少,对开发的要求降低了,很多公司面临裁员问题。
三、PHP不会被替代
PHP是世界上最好的语言,在做web开发时候,非常快速。PHP的优势也是很明显的,不存在被替代的问题

只要功夫深,铁杵磨成针。

不要太过相信网上说的互联网寒冬,php待遇差,工作饱和了等一些谣言。

只要你技术过硬,不用你去找工作,工作自然会来找你。但是你的基础要扎实,还要有发展能力。

什么是发展能力。就是不断提升自我的能力,可以不断学习不断进步的能力。

我见过很多高手,从来都不仅会一门语言,python,java,php,nodejs,go对他们来说,只要工作有需要,他们都能应付的来。

所以我的建议是如果你对技术感兴趣,那就只管去做,工作岗位从来都不缺,他只是等待一个合适的人,而你一旦你出发了,成功就在脚下

五六年的php,后来转写go,夹杂着python,现在写了不到一年的java[捂脸]

我不是PHP,是java疫情期间公司面临倒闭,就进行了裁员。裁员后发现今年确实不好找工作,尤其是对于30左右的开发人员,真的好难找工作,刚毕业一两年的没有什么影响,他们都基本上一周之内找到了,其他的差不多一个月了还没有相关的应聘单位接收。感觉可以考虑考虑转行了,这一行确实优势不大,因为没有别人那么高超的学历和技术,并没有比他们优势大的让公司选择你。

现在也好迷茫,其他的又不会,这一行现在工作也不好找。还在外面漂着。不知道什么时候是个头。要说技术,说真的也不是很差,开发起来项目也不含糊,但是好久没面试了,准备起来比以前费劲多了,面试问的问题也越来越难。加油把

Boss上和前程无忧上的确很少。

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:587
制作脚本网站 发布:2025-10-20 08:17:34 浏览:882
python中的init方法 发布:2025-10-20 08:17:33 浏览:574
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:761
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:678
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1006
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:251
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:108
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:799
python股票数据获取 发布:2025-10-20 07:39:44 浏览:706