PHP是什么?
php作为一门编程语言,根据图灵等价性,他能完成所有编程任务
通常来说,php的主要应用是服务器程序开发,这领域他的任务就是接收http请求 ,处理请求,发出http响应
比如,你在饿了么点餐。第一步,你需要给服务器发一个请求,“请告诉我附近5km范围内都有哪些火锅店,我的位置是东精xxx,北纬yyy”,php收到请求,“坐标xxx,yyy,火锅店,半径5km”,php去数据库查询这些数据,然后把这些数据发给你的手机
PHP主要用于web网站服务端开发
每种编程语言都有其专门的应用方向,比如:python主要面向数据处理、C主要面向嵌入式、C++面向应用程序设计。
而PHP主要是面向web网页应用的服务端设计,php + mysql + apache/nginx + linux 架构被称为经典的网站搭建架构体系,这个体系用的最多也最成熟。当然像python/java这些语言也具备网站开发的能力,但是所谓术业有专攻,其在web开发的影响力还远远及不上PHP。
PHP框架众多
php具备很多成熟的框架可以选择,常用的有:
- thinkphp
- laraval
- yii
- yaf
每种框架都有自身具备的特点,如:
ThinkPHP
中国人开发的PHP框架,因此具备非常完善的中文参考资料,目前也很流行,非常适合中国的开发者使用,如果你的英文不好,又想快速上手PHP,那它是很好的选择。
Laraval
就全世界来讲它是最流行的PHP框架了,因此学习资料也很多,如果你的公司想选取一个框架作为公司web应用的统一开发框架,那可以选它。
Yii
这个框架也很流行,是美籍华人薛强开发的,不得不说中国人太聪明了。这个框架是我目前正在使用的框架,它的优点是代码集成度很高,如果你熟练掌握了这个框架,可以快速开发出优质代码,工具也很完善,如:migrate数据迁移和版本维护、Gii自动脚本生成工具等。但是它的优点也是它的缺点,集成度太高导致学习成本很高,不建议初入PHP的人学习。
Yaf
这个框架性能最好,极简的设计风格使得它的运行速度是所有PHP框架中最快的。但是性能的提升是以牺牲开发效率换来的,举个例子:它无法同时提供多个数据库的访问能力。
PHP对比其他语言的WEB开发能力
Java Spring
java也可以开发web应用,也有一个框架叫做spring boot,但是目前就这一个框架可用,没有控制台应用,没有migrate数据版本控制能力,数据库的访问也需要在xml里写原生sql(这种方式太原始也不安全)。
Python Flask
这个框架其实就是一个插件,可以提供http服务的插件,因此并没有项目目录结构可以参考,你只要像编写python的常规代码一样使用flask就可以了,当然了,它也没有migrate,数据库访问也麻烦,数据格式交互(json互转)特别麻烦,实在是不建议选择。
我让你秒懂php是干嘛的。。
你看到今日头条各种文章线条框框都是用html设计的,如果你想上传视频或者发布动态,html是做不到的,这就需要用到服务器语言了,php等。。。