PHP课程自学要多久?不得不更正一下这个问题,达到不同的技术水平需要的时间是不同的,而且跟自己的个人资质还有学习途径也是有很大的关系。本篇文章将从PHP的成长历程和相关技术需求、具体自学的学习建议和学习资料分享三方面进行阐述。

一、成长历程以及技术需求

初级PHP工程师:

1、精通PHP编程语言,具有良好的设计思想和实践能力;

2、精通ThinkPHP应用框架,熟练使用MySQL数据库,掌握面向对象编程思想;

3、熟悉 html5、javascript、Ajax、DIV+CSS、XML、jquery等Web相关技术。

4、熟练使用MVC模式开发;

5、熟悉主流CMS系统,能熟练应用及二次开发;

6、1年及以下开发经验,有系统开发经验者优先。

7、逻辑思维能力强,做事有条理性,有较强的分析问题和解决问题的能力;

8、责任心强,良好的执行能力,较好的完成预定任务,良好的学习能力和独立解决问题的能力

中级PHP开发工程师

1. 计算机相关专业本科以上学历,2年以上PHP工作经验。

2. 掌握HTTP/HTTPS协议、TCP/IP协议、SOCKET原理、熟悉RestFul API接口开发。

3. 熟练掌握关系数据库理论,对MySQL/MariaDB有深入了解。

4. 熟悉至少二种NOSQL数据库,比如Redis、MongoDB、Couchbase、SSDB。

5. 熟悉至少一种搜索引擎,比如ElasticSsearch、Sphinx、Solr。

6. 熟悉异步编程,使用过至少一种消息队列,比如RabbitMQ、Kafka、Gearman、Redis。

7. 熟练至少一种测试框架,比如PHPUnit/Codeception/phpspec。

8. 熟悉SQL Injection、XPath Injection、XSS、CSRF、DDoS常见攻击的原理与防范,具备良好的安全编程意识。

9. 熟练使用Git代码版本控制工具、Composer包管理工具、Xdebug调试工具、XHProf性能分析工具、Charles、Fiddler等抓包工具。

10. 编写代码符合PSR标准规范,具有良好的项目文档编写习惯。

高级PHP开发工程师

1. 3年以上LNMP开发环境,具有良好的代码习惯,熟练掌握一种PHP开发框架;

2. 具有良好的设计和抽象能力,能够清晰的完成从业务需求到模块拆解的设计过程,并选择合适的技术方案;

3. 熟练掌握Mysql及常用优化方案,有大数据量的数据库设计及规划能力,对分布式文件存储、消息队列、redis缓存等相关技术有深入研究;

4. 熟悉git代码管理流程。

二、自学学习建议

对于想要自学的小伙伴,我觉的能达到初级PHP工程师的水平就不错了。这个不是打击自学的人,因为从上面的岗位需求上来看,中高级PHP工程师都是需要一定的开发经验的,没有进公司实战,是不会有很大的突破的。

对于学习PHP的学生而言,一般分为两种情况,一是在计算机专业,二是非计算机专业。其实如果在大学里修的计算机专业,一般都是有一定基础的,对于拿下PHP初级工程师的岗位是没有问题的。只是要将自己的技术知识整合一下,工作中需要的技术接触一下是没有问题的。

对于非计算机专业想要学习PHP,就需要下一番功夫了,因为之前没有接触过这个行业,在学习之前,需要了解很多行业信息,让自己对PHP尽快熟悉起来,没有必要急于学习专业的技术知识,先从大环境入手,相对来说更简单一些。