PHP应该学什么,如何学好PHP(一)
1. 应该怎样学习PHP,学习的顺序是怎样的?
2. PHP学好后,可以做什么事情?
3. 听得懂课,但是一旦自己独立写程序,就没有思路?
4. 学习PHP需要怎样的基础,算法重要吗?
等等,诸如此类的问题。所以,我想干脆就写一篇文章来详细的给PHP学习者们说说应该怎样学习PHP?怎样才能学好PHP?
首先,大家要达成一个共识,就是学习任何一门编程技术都需要我们付出心血,都要讲求循序渐进,由浅入深。对每一个知识点要搞透,然后通过案例来加深认识,最后还需要把学习到的各个知识点实际运用到项目中去,才能融会贯通,最后才能到达能自如的驾驭项目的水平,现在我们就来看看应该怎样一步一步的学习PHP这门编程技术,先看看学习PHP的顺序图,此学习顺序图是我推荐的学习内容和学习顺序(除了这里列出的内容,要走向高手之路肯定还有更多技术需要学习,我这里只是对于初学者列出的主干学习内容,并不是全部):
对于PHP初学者来说,看到这样多的内容,心里已经开始打退堂鼓了,但是,万丈高楼平地起,我们只要坚持每天学习一部分内容,最后总会把这些技术都精通掌握的。
PHP这门技术相对java和 .net来说,是比较简单的。PHP最主要的作用就是做站,也就是说PHP技术是用于开发网站的,比如目前世界排名前40的网站,有70%都使用到了PHP技术,比如facebook、youbute 、新浪、百度、淘宝、搜狐和腾讯这些知名的网站都有很大一部分业务是用PHP来开发的,因此被誉为web开发首选技术。开发PHP的软件可以说是简单的记事本也可以是一些集成开发软件,比如 zendstudio ,这里我列举一些常见的PHP开发工具:
① Editplus ② Zend Studio ③ PHP Coder ④ phpedit ⑤ easyecpilse ⑥ dw ⑦ vim
windwos下我常用的是 editplus 和 zend studio ,在linux下我推荐使用vim来开发更专业。
要学习PHP开发一定要按照正确的顺序进行学习(如上图PHP学习顺序图所示),很多人被一些《xx天精通***》这样的垃圾书的影响,PHP这门语言相对JAVA要简单,开发人员不需要学太多即可通过面向过程的方式开发出一个"某某管理系统",因此社会上充斥着大量只会面向过程的开发人员,他们不懂Http协议!不懂JavaScript!不懂PHP工作原理!不懂什么是真正的面向对象程序设计,这种"不不不"开发人员能找到4000的工作 就已经非常值得庆幸了。企业中最需要的是对"Http协议、Javascript、PHP工作机制、PHP程序调优、LAMP环境调优、OOP"等技术熟悉的人,而这样的人是非常难招的。大家记住欲速则不达,速成的结果就是以后浪费更多的时间,回想这么多年你走过的路,有多少次为了走快点就跳着走,最后又浪费时间返工的事情,按照正确的顺序才能更快、更好的掌握PHP。
学习PHP分为以下几个阶段,每个阶段都有学习的重点和注意事项,下面详细给大家介绍:
第一阶段: PHP前端网页开发基础,在这一个阶段中分为以下几个阶段课程
(1)HTML基础与加强
HTML语言,HTML语言背景知识,HTML全局标签,HTML格式标签,HTML文件标签,HTML超链接标签,HTML图像标签,HTML框架标签,HTML客户端图像地图,HTML表格标签,HTML帧标签,HTML表单标签,HTML头元素,HTML分区标签
(2)XHTML基础与加强
XHTML与 HTML的差异,XHTML语法,XHTML DTD,XHTML验证,XHTML模块,XHTML属性,XHTML事件,XTHML结构化
(3)HTML5设计与应用
HTML5介绍,HTML5多媒体处理,HTML5画布,HTML5 Web存储技术,HTML5表单,HTML5 属性和事件HTML5的常用标签(比如:applet标签、article标签、aside标签、audio标签、canvas标签、datalist标签、details标签等)
(4)CSS基础与加强
CSS 简介,CSS基础语法,CSS 派生选择器,id 选择器,CSS类选择器,CSS盒子模型
CSS背景 、文本 、字体 、边框 、外边距 、内边距 、列表 、表格CSS 高级: CSS 尺寸、分类 、定位 、伪类 、伪元素 、媒介类型
(5)DIV+CSS设计与应用
使用知名网站的首页深入剖析DIV+CSS的WEB标准:盒子模型经典案例-优酷首页面、仿sohu首页面布局、可爱屋网站首页面。涉及知识点包括: (CSS定位的四种方式、左浮动、右浮动、清除浮动、标准流和非标准流、设置对象的层叠顺序、块元素和行元素的转换等)
(6)Javascript基础语法:
Javascript基本介绍、Javascript的发展史、Javascript运行原理剖析、Javascript特点、
Javascript的标识符、Javascript基本数据类型(数值类型、布尔类型、字符串类型)、
Javascript复合数据类型简介(数组、对象)、Javascript特殊数据类型(NULL、undefine)、
定义变量、初始化、赋值、数据类型转换的两种方式(自动转换、强制转换)、Javascript的运算符(算术运算符、关系运算符、逻辑运算符)、Javascript的位运算和移位运算
(7)Javascript三大流程控制
顺序控制、分支控制(单分支: if语句、双分支: if-else语句、多分支 if-else if-else 语句, switch-case-default语句)、循环控制(for语句、while语句、do-while语句)、在ie和firefox如何调式Javascript
(8)Javascript函数
函数基本概念、函数的定义、函数的调用方式及调用过程深度剖析、函数使用细节讨论、使用Function类创建函数、函数实际运用(打印金字塔、九九乘法表)、函数的递归调用、
Javascript常用系统函数使用(encodeURI、decodeURI、eval、parseInt、parseFloat、isNaN等)
(9)Javascript数组
数组的基本使用、使用for/while遍历数组、数组实际运用(计算班级平均分)、二维数组的基本使用、使用for遍历二维数组、对二维数组转置处理、数组排序介绍、冒泡排序、顺序查找和二分查询法
(10)事件驱动
Javascript的Event-Driven机制、事件源、事件处理程序、事件名称、事件对象是什么、
事件类型(鼠标事件、键盘事件、HTML事件、其它事件)、Javascript访问CSS技术、
事件驱动的浏览器兼容性处理、常用的18个事件(onblur、onchange、onfocus、onkeydown、onmousedown等) 综合案例(Javascript版计算器)
(11)DOM编程
DOM编程介绍(HTML DOM与XML DOM)、DOM编程实例入门、BOM介绍、DOM对象介绍、window对象详解、history对象详解、location对象详解、navigator对象详解、screen对象详解、event对象详解、document对象详解、body对象详解、style对象详解、WEB版坦克大战游戏、forms对象(集合)、from对象、images对象(集合) 、img对象、links对象(集合)、link对象、all对象(集合)、table对象详解、tableRow对象和tableCell对象、基于table对象的用户管理系统
用卖油翁的一句话说:“我亦无他,但手熟尔”,请永远记住“巧是从熟练中演变出来的”,这就是我们常说的“熟能生巧”
免费领取LAMP兄弟连原创PHP教程光盘/《细说PHP》精要版,详情咨询官网客服:http://www.itxdl.cn