春节的时候一直在担心论文和找工作的事情,由于导师不允许实习,就想着利用在家里的时间,补充一些相关的知识。通过公众号,看了一些PHP求职相关的文章,下面是一些对于PHP的新认知。这篇文章主要来自于《十年程序员用眼告诉你 2018 PHP 不一样》这篇文章。

PHP的简介

PHP,缩写:Hypertext Preprocessor,中文名:超文本预处理器。

PHP语言之所以能有今天的地位,得益于PHP语言设计者一直遵从实用主义,将技术的复杂性隐藏在底层。

  • PHP语言具有如下优点

    • 入门简单,容易掌握
    • 开源代码,可扩展性,面向对象编程,数据库连接
    • 程序健壮性好,不容易出现像Java 、 C++ 等其他语言那样复杂的问题,如内存泄漏和 Crash,跟踪调试相对轻松很多。
    • PHP官方提供的标准库非常强大,各种功能函数都能在官方的标准库中找到,包括MySQL、Memcache、Redis、GD图形库、CURL、XML、JSON等等,免除了开发者到处找库的烦恼。
    • PHP 的文档非常全面详细,每个函数都有详细的说明和使用示例。
    • 第三方类库和工具、代码、项目也很丰富。开发者可以快速、高效地使用PHP编写开发各类软件。

下面介绍在技术上,PHP程序未来需要掌握的。

Composer

第一点就要提Composer,自从Composer出现后,PHP的依赖管理可以变得非常简单。程序内依赖一些类库和框架,直接使用Composer引入即可,通过使用composer update安装依赖的包。解决了过去加载外部库的各种难题。

Composer也有国内镜像,速度非常快。现在绝大部分PHP开源的项目都提供了Composer的支持,建议大家在项目中使 Composer来解决PHP代码包管理的问题,不要再使用下载源码、手工include的原始方法。

PHP7

PHP7版本对Zend引擎做了大量修改,大幅提升了PHP语言的性能,使用PHP7可以使你的程序性能瞬间翻倍。即使是WordPress这样重量级的软件运行在PHP7都能有上千QPS,相当于一台服务器每天就能处理8000万次请求。

使用PHP7,做好MySQL优化,使用Memcache和Redis进行加速,这套技术架构完全可以应对相当大规模的系统。除了某些亿级用户的平台之外,一般规模的系统完全没有压力。

PSR

PSR是PHPFramework Interop Group 组织制定的PHP语言开发规范,约定了很多方面的规则,如命名空间、类名规范、编码风格标准、Autoload、公共接口等。现在已经成为PHP技术社区事实上的标准了。很多知名的PHP框架和类库都遵守了PSR规范。PHP开发者应当学习掌握PSR规范,在开发程序时应当尽量遵循PSR规范。

Swoole

2017年PHP还局限于做Web网站吗?No,如果你还不知道Swoole,赶快去了解一下吧。Swoole的口号是重新定义PHP语言,Swoole是一个异步并行的通信引擎,作为PHP的扩展来运行。Node.js的异步回调Swoole有,Go语言的协程Swoole也有,这完全颠覆了对PHP的认知。使用Swoole PHP 可以实现常驻内存的Server程序,可以实现TCP、UDP异步网络通信的编程开发。

过去PHP只能做一个Web网站,现在使用Swoole可以做Java 、C++才能实现的通信服务,比如WebSocket即使通信、聊天、推送服务器、RPC远程调用服务、网关、代理、游戏服务器等。如果你想用PHP做点Web系统之外的东西,Swoole是最好的选择。

Laravel

最近几年最火热的PHP框架,官网号称是为Web艺术家设计的框架,可见这套框架有多优雅。Laravel提供的功能模块丰富,API设计简洁,表达力强。而且它的社区非常活跃,代码贡献者众多,第三方的插件非常多,生态系统相当繁荣。

Laravel底层使用了很多symfony2组件,通过composer实现了依赖管理。如果还在纠结使用什么PHP框架,不如选择 Laravel。Laravel提供的命令行工具基于symfony.console实现,功能强大,集成了各种项目管理、自动生成代码的功能。

Phar

PHP5.3之后支持了类似Java的jar包,名为phar。用来将多个PHP文件打包为一个文件。这个特性使得PHP也可以像Java一样方便地实现应用程序打包和组件化。一个应用程序可以打成一个Phar包,直接放到PHP-FPM中运行。

配合Swoole,可以在命令行下执行php server.phar 一键启动服务器。PHP的代码包可以用Phar打包成组件,放到Swoole的服务器容器中去加载执行。

补充

除了上面提到的一些,因为一般PHP与MySQL组合使用,在很多有PHP的地方都会有MySQL,而这有涉及到MySQL相关的知识,如MySQL索引、缓存等技术。除此关于Linux方面的知识也是必要的。

如果想要长期在PHP方向发展,个人觉得,对于PHP内核相关的知识也是需要补充的。另外就是程序员关于设计模式方面的掌握。

参考资料

[1] 开源中国:十年程序员用眼告诉你 2018 PHP 不一样

[2] PHP(一)——概述及服务器配置

[3] 15 张思维导图来快速学习 PHP 语言基础

2018年对PHP的新认知相关推荐

  1. 2次转管理失败后,我对项目、团队、敏捷转型的新认知

    本文根据孙冲老师在[Deeplus直播第215期]线上分享演讲内容整理而成. 孙冲 轮子科技项目主管 关注人.技术.架构三者联系,现在的工作方向为微服务.DDD.中台.架构.项目管理以及敏捷相关. 对 ...

  2. 新认知,新力量!神策 2021 数据驱动大会来了

    人类最智慧的体验 莫过于世界带来的新认知 认知是未来的常识 正确的认知是未来发展的动力 2021 年 10 月 27-28 日  第六届神策数据驱动大会   新认知,新力量  汇聚全球重量级嘉宾 共同 ...

  3. 【2018清博盛典暨新媒体大数据峰会】学界、产业、创业者跨界年度观察

    2019独角兽企业重金招聘Python工程师标准>>> 1月28日,由清博大数据主办的"2018清博盛典暨新媒体大数据峰会"在北京国家会议中心举行. 清博大数据C ...

  4. 【2018,中国智能+】新智元10万+热文排行,AI爆发没有看客

    2018年的第一天,大家新年好! 人工智能在去年着实火热了一把,无数新技术.新产品.新公司在这一年爆发,新智元也忠实地记录着这一年的历史. 2017年,人工智能领域发生的几次重要事件,不仅改变着整个行 ...

  5. 安徽大学计算机学院张兴义教授,“2018年CCF合肥为新研究生导航” 开启复合型人才培养之路...

    CCF合肥于2018年9月14日下午在安徽农业大学学新图书馆报告厅开展"2018年CCF合肥为新研究生导航"活动,本次活动由中国计算机学会主办,CCF合肥.CCF YOCSEF合肥 ...

  6. 2018年重庆大学——唐立新奖学金面试经历总结

    2018年重庆大学--唐立新奖学金面试经历总结 (1)2018年重大唐奖面试现场:http://xsc.cqu.edu.cn/info/1073/3991.htm (2)2018年重大唐奖开奖:htt ...

  7. 年薪千万的产品经理打开了我对这个职位的新认知!

    说到产品经理这个职位,很多公司都觉得招个2~3 年的人就可以了,只要能画画原型就可以了.开始我也这么认为的,直到我认识了一名大厂年薪近千万的产品经理大佬,简直是刷新了我对产品经理这个职位的认知!如果只 ...

  8. 2018年是VR的新机会吗?

    本文综合了ITU.IDG最新报告以及Harmonic VP Thierry Fautier的对VR内容与技术成熟度的观点.包括高效的编码技术.点播内容都是VR行业的不错的切入点.但大规模的赛事VR直播 ...

  9. 一文看懂 BDTC 2018:探秘大数据新应用(附 PPT 下载)

    12 月 8 日,北京新云南皇冠假日酒店,由中国计算机学会主办,CCF 大数据专家委员会承办,CSDN.中科天玑数据科技股份有限公司协办的 2018 中国大数据技术大会(BDTC)圆满落下帷幕. 从 ...

最新文章

  1. 关于我的Android 博客
  2. python中表头格式错误导入_python读csv文件时指定行为表头或无表头的方法
  3. linux系统安装nc,Lifelong learner.
  4. linux下python开发环境搭建_linux下python开发环境之二——安装Eclipse+PyDev
  5. 域添加另一台机器_巨杉Tech | SequoiaDB数据域概念解读与实践
  6. Ubuntu下Android编译环境的配置
  7. 有计算机科学与技术专业的大学,开设计算机科学与技术专业的大学有哪些,开设计算机科学与技术专业的大学有哪些...
  8. 面对10倍需求只用 40% 成本,这是一种怎样的体验?
  9. 樱花动漫中的视频下载分析
  10. java axis_Java 使用Axis实现WebService实例
  11. eNSP-利用单臂路由实现VLAN 间路由
  12. vue-oss阿里云上传图片
  13. Kong 开源的服务网格Kuma爬过了K8S这座大山
  14. 爱荷华州立大学计算机学院,享誉全美的祖父级大学——爱荷华州立大学(ISU)...
  15. RSA前端加密,java后端解密
  16. java 引入本地dtd,java解析xml文件读取本地dtd或者忽略dtd
  17. 【爬虫实战】国家企业公示网-crawler爬虫抓取数据
  18. idea的git报错You have not concluded your merge
  19. Linux发行版本及常用国产系统+系统优化
  20. word里输入向上或向下取整符号

热门文章

  1. CDOJ 482 Charitable Exchange bfs
  2. 高性能 TCP UDP 通信框架 HP-Socket v3.2.3
  3. 系统弹出菜单类名是固定的. #32769
  4. 例题4-5 引发的static知识点
  5. 30幅让人震撼的精美高速摄影作品欣赏
  6. H3C 802.1X 客户端的安装使用方法
  7. python字符串的特点_python小白之路(特性语法三之字符串)
  8. 微软小娜 服务器连不上网,Win10 64位联网状态下微软小娜无法连接网络
  9. qt 实现 以图片为中心 让它旋转_QT图片旋转动画
  10. 命中率_三分命中率暴涨19%!卡皇进化已无弱项,顶级3D练成何须布拉