在根本阶段,我们要学习的技能紧张包括Linux操作系统的基本利用、Nginx的安装和配置、MySQL的安装和配置、PHP语法和基本利用、HTML\CSS\JavaScript等Web前端运用知识、系统设计知识等,即以搞通LNMP组合运用作为紧张目标。
有些朋友可能会以为很奇怪,我学PHP,为何要一起学这么多“局外”的知识,有这个必要吗?当然有!
PHP本身只是一种脚本编程措辞,她本身彷佛没什么威力,她的威力,紧张通过与Linux、Nginx、MySQL等技能的整合才能表示出来。
前面提到LNMP组合,这里做个阐明。所谓LNMP,是指一组常日一起利用来运行动态网站或者做事器的自由软件名称首字母缩写。L指Linux;N指Nginx;M指MySQL,也可以指MariaDB(笔者实在最喜好用PostgreSQL);P指PHP,今年Python热,也有好事之人把它当Python!

常见的还有一种LAMP组合和LNMPA组合,个中的A是指Apache,Nginx和Apache都是开源Web做事器,LNMP越来越盛行,我们学还是定位到LNMP吧。LNMP、LAMP、LNMPA开源免费功能多威力强,至少目前还是Web开拓的主流技能。
既然紧张的目的是入门,我们的重点当然是学PHP本身,配套的技能,不是我们学习的最重点,但为了我们能够顺畅的学习和PHP,至少要节制环境的安装和配置、配套运用的各种配置等。
下面是整理的PHP学习的阶段学习指南,本篇为《根本阶段》篇。这里对涉及到的知识紧张做一个罗列参考,详细学习,还须要您多查资料哦!
第一阶段:根本阶段(根本PHP程序员)
重点:闇练节制LNMP(核心是安装配置基本操作)
目标:能够完成基本的LNMP系统安装,大略配置掩护;能够做基本的大略系统的PHP开拓;能够在PHP中型系统中支持某个PHP功能模块的开拓。
韶光:完本钱阶段学习的韶光因人而异,快则三四个月、中则半年到一年、慢则三四年、惨则一塌糊涂。您想要快的,就要多下功夫,三天捕鱼两天晒网的,估计会是惨的。
下面对知识技能分成六个方面供您参考:
1、Linux:操作系统操作系统是统统运用开拓的根本,常日大家喜好利用Linux作为PHP开拓和运用环境。Linux是开源免费的,但版本浩瀚,比较常见的版本包括CentOS、RHEL、Ubuntu、Deepin等,无论以哪个发行版,您须要节制的知识不能漏了:
基本命令、操作、启动、基本做事配置(包括rpm安装文件,各种做事配置等);会写大略的shell脚本和awk/sed 脚本命令等。2、Nginx: Web做事器Nginx (engine x) 是一个高性能的HTTP和反向代理web做事器,同时也供应了IMAP/POP3/SMTP做事。Nginx的源代码以类BSD容许证的形式发布,因她的稳定性、丰富的功能集、示例配置文件和低系统资源的花费而有名。学习Nginx,你须要做到:
做到能够安装配置nginx+php,知道基本的nginx核心配置选项,知道 server/fastcgi_pass/access_log 等根本配置,目标是能够让nginx+php_fpm顺利事情。3、MySQL: 数据库系统MySQL被称为“天下上最盛行的开源数据库系统”,实在还有个MariaDB,与MySQL如影随从。还有个PostgreSQL被称为“天下上最前辈的开源数据库系统”,这三个数据库个个都很棒,从习气来讲,选择MySQL为最优选择,您须要做到:
会自己搭建MySQL,知道基本的MySQL配置选项;知道innodb和myisam的差异,知道针对InnoDB和MyISAM两个引擎的不同配置选项;能够纯手工编译搭建一个MySQL数据库并且配置好编码等正常稳定运行;核心主旨是能够搭建一个可运行的MySQL数据库;节制足够的SQL语法知识、数据库备份操作等。4、PHP:通用开源脚本措辞PHP是我们学习的重点,PHP本身我就不多做先容了,您学这个,当然对她很理解。学习PHP,您可以从以下目标入手:
节制基本语法数组、字符串、数据库、XML、Socket、GD/ImageMgk图片处理等等;熟习各种跟MySQL操作链接的api(mysql/mysqli/PDO),知道各种编码问题如何办理;知道常规闇练利用的PHP框架(ThinkPHP、Laravel、Zendframework、Yii、Yaf等);理解基本MVC的运行机制和为什么这么做,轻微知道不同的PHP框架之间的差异;能够快速学习一个MVC框架;能够知道开拓工程中的文件目录组织,有基本的良好的代码构造和风格;能够完成小系统的开拓和中型系统中某个模块的开拓事情。5、HTML/CSS/JS:前端UI如果条件和韶光许可的话,建议适当学习下 HTML/CSS/JS 等干系知识,PHP作为预编译措辞,她常日嵌入在HTML中,通过组合HTML、CSS、JavaScript等诸多技能展示页面。您可以从以下入手:
知道什么是web标准、div+css的web/wap页面模式;知道HTML5和HTML4的差异;理解一些基本的前端只是和JS框架(Node.JS、jQuery之类的);理解一些基本的JavaScript编程知识。6、系统设计能力:这才是王道前面的知识学了之后,终极的目的是开拓出产品,您还须要一定的设计能力,但对自己的期望也不能太高。
哀求能够完成小型系统的基本设计,包括大略的数据库设计;能够完成基本的:浏览器 -> Nginx+PHP -> 数据库 架构的设计开拓事情;哀求能够支撑每天几十万到数百万流量网站的开拓掩护事情;怎么样,是不是心里开始有谱了呢?那就开干吧!