PHP 入门学习教程及进阶(源于知乎网友的智慧)

思过崖历程:

自学的动机、自学的技巧、自学的目标三个方面描述学习PHP的经历

一、自学的动机:

一定要有浓厚的兴趣,兴趣是最后的老师,可以在你迷茫的时候不断地支撑着你走下去。

自学不是为了工作,不是为了梦想,仅仅是随便玩玩而已,大可不必各种纠结,互联网很发达,教程随便一搜就一大堆,学个一知半解装装B还是很轻松的,特别是慕课网上的各种眼花缭乱的视频教程,绝B会让你恨时间如流水,何其宝贵~~然而这并没有什么卵用,在大部分的情况下,它仅仅适合学习某一门语言的一个专题,并没有针对某一门语言提供由浅入深,系统全面的教程。

Web全栈学习路线图吧,这也是我目前自学到的主要编程内容

二、自学的技巧:

定位要明确,知识体系要系统,并一定要做好笔记

定位要明确就是在你通过自学对整个全栈开发有一个初步了解后,就要确定一下你未来的职业发展方向。如果你喜欢前端就一心一意地往前端方向去发展;如果你喜欢后台就专心致志地往后端方向去发展;

目前为止自学的内容有哪些,以及教程的出处在哪

  • 前端:

HTML学习HTML5
| 瓢城Web俱乐部

CSS(LESS):学习CSS的时候,并没有看视频,找到的这样一本书,《CSS从入门到精通》,比较基础,也比较系统全面,推荐。

JavaScript:当初很多人说JavaScript太复杂,建议直接学习jQuery框架就好。但是我的理念就是知识体系要系统,现在想来,这绝对是一个非常正确的选择。殊不知近年来,前端发展异常迅速,前端框架千变万化,让人眼花撩乱,即使学会了jQuery框架,如果不会jQuery框架的基础JavaScript,又怎么能够平滑过渡到其他的JavaScript框架呢?诚然,我目前也的确认为世界上最难的编程语言是JavaScript,但这又是Web开发从业人员不得不面对的,所以请享受无法摆脱的痛苦。

推荐书籍:JavaScript高级程序设计(第3版) 中文,学过JavaScript的都说好,不要被他的书名给吓到了,真正是一本深入浅出,从入门到精通的好书。

视频教程:李炎恢老师的JavaScript视频教程大部分内容也都是借鉴于这本书哦,看完了老师的149集JavaScript视频教程里面的知识点部分,感觉没有原版的书籍有滋有味,也没有原版的书籍讲得连贯。

jQuery框架:JavaScript学完之后,必学历史悠久,影响深远的jQuery框架,推荐锋利的jQuery(第2版),深入浅出,系统全面;如果想踏入jQuery高手第一阵营,那就研究一下jQuery
2.0.3的源码吧,可以看一下妙味课堂-jQuery源码分析视频,有50多集的试看教程。

建议先试看,觉得好再买会员,因为也不见得你能看得懂,哈哈哈!jQuery源码是丰富的宝藏,蕴含了很多优秀的设计模式与开发理念,其他的JavaScript框架大都受此影响,想致力于前端开发的人,值得一看!

ExtJS:说实话此框架组件丰富,功能比较强大,不过入门比较难,不再建议学习

FIS:百度官方出品,用于构建前端开发自动化的工具,代码合并、压缩、测试,一气呵成,当你能够熟练使用JavaScript与jQuery的时候,直接看官方文档即可,官网FIS3
- 前端工程构建工具。

BootStrap:我自己的技术博客写如诗的代码
,和思过崖的问答社区 问答社区都有使用。Twitter官方出品,世界上最流行强悍的HTML+CSS+JavaScript前端开发框架。在目前众多的Yii和Laravel后端PHP框架中已经内置了Bootstrap前端开发框架,这个也算是给很多致力于后台开发,但又想做出比较好看的前台页面的程序员GG或者是全栈工程师带来了无比巨大的希望。关于Bootstrap
的学习,看官方文档或者菜鸟教程都行

  • 后台:

ASP:这个不多说,建议别看,我当时学习ASP,只怪儿时年幼无知,贴吧有大神说学会ASP之后,学PHP就很容易了,ASP是PHP的基础;我无异于挑起争端,尼玛,PHP本身就是以入门容易、上手快出名的呀;而且全世界目前大概有80%的网站都是用PHP做出来的,你还学ASP干毛线;视频地址:ASP互动视频教程,建议别看!在讲PHP的时候谈ASP,就是想让大家知道这是一个坑;

ASP.NET:同为微软家的产品,ASP.NET我倒是挺喜欢的,骆老师的教学视频也绝对是业界良心,诚意之作,由浅入深,系统全面,ASP.NET基础实例教程。记得有一次我凌晨两点给他发邮件,他10分钟之后就给我回复了,这样的好老师就和你的高三班主任一样,是可遇不可求的。另外说到了ASP刀NET,就不得不祭上我最爱的三大开发神器之一的VisualStudio了;不过后来的微信公众号开发很火,才转向了PHP方向。

PHP:

直接就在 课程 | 瓢城Web俱乐部 上找到了PHP的教学视频,这个算是对我大学以及未来的求职写如诗的代码
有里程碑意义的事情了。饮其流者怀其源,学其成时念吾师,感谢李炎恢老师能够独自一人,始终如一的坚守,由浅入深,系统全面地出品了588集的PHP视频教程,在这个在线教育商业化程度越来越高的时候,实属不易。

客观上来讲,李炎恢老师的PHP分为四季,每一季都以项目实战为主,很锻炼人的动手能力和全栈开发的能力。

建议初学者可以先学习第一季、第二季和第四季,第三季难度比较大,先不要学。等参加工作后,项目做熟练了,想沉淀下来对PHP语言本身有一个深度的认识,再学也不迟;

时间方面:588集的教程视频也确实可以说是工程量巨大,其中牵扯到的又有HTML,CSS,JavaScript、jQuery、jQuery UI、jQuery EasyUI等相关技术和SVN,Navicat等开发工具。如果你比较拼命的话,每天学3到5集(每集大概20分钟),其他时间用于恶补PHP相关的技术,大概半年的时间是可以大大提高你的身价的。

有人说韩顺平等老师的视频教程是免费的,这个问题也有朋友私聊过我,我当时的一致回复都是其他老师侧重于专题知识点和小项目,而李老师的视频侧重的是完整项目的实战开发,因为他们的视频教程,我也都有学习过,例如韩顺平老师的HTTP协议在李炎恢老师的教程里面就没有出现,这个HTTP协议还是非常建议学一下的。

四季的PHP教程主要有哪些内容

第一季:用PHP基础知识开发一个个人博客项目

  • PHP开发环境的搭建
  • ZendStudio IDE编辑器的使用和项目版本控制
  • PHP基础知识
  • 自己写一个富文本编辑器
  • 一个完整的项目的前后端开发以及mysql使用的流程

第二季:用面向对象的知识开发一个CMS新闻管理系统

  • 使用面向对象的方式去开发项目
  • 学会三层架构的开发模式
  • 如何自己去写一个模版引擎,了解网站内容缓存的原理
  • 一个完整的项目的前后端开发以及mysqli使用的流程

第三季:学会自己写一个框架,开发一个在线商城系统

  • 学会各种PHP设计模式
  • 使用Smarty模版引擎
  • 自己写一个PHP框架出来
  • 支付宝API的调用
  • 一个完整的在线商城项目的前后端开发的整个流程

第四季:使用大道至简的ThinkPHP框架开发类似新浪微博的系统

  • 学会使用ThinkPHP开发框架,当你艰辛地学完第三季的时候,第四季已经是So easy了
  • 学会Mysql优化的各种方法
  • 学会使用SVN对代码进行版本控制
  • 一个完整的基于ThinkPHP框架+Navicat数据库管理工具+SVN代码版本控制工具的项目的前后端开发的整个流程

学完这四季的内容,估计在你们学校已经遥遥领先于众多人了。想突破的话,还要自己单枪匹马做一个项目出来再说。请记住,Speak easy,show me your code.

关于PHP这个主要部分的内容,就到此结束了,放一张我在为知笔记软件上做的笔记目录和内容的截屏吧。这个很重要,希望大家都能够养成勤做笔记的好习惯

大纲式总结篇

  • PsySH (PHP的REPL),让你能随时试验简短的代码
  • 用Google,哪怕是用中文搜索,99.99%的PHP问题都能搜到,只要你知道怎么搜
  • 反复地翻阅PHP: PHP Manual,尽早通读一遍,能省去为各种基本问题纠结的反复
  • 关注Packagist的popular列表,经常的去一些package的github上读代码,不需要读全部,读感兴趣的就行
  • 如果用框架,就去读它的源代码,理解它的设计模式和架构技巧
  • 现在PHP程序员如果一定要看书,就看这本 Modern PHP
  • 另外两本备选,也很有用:PHP Objects, Patterns, and Practice /PHP
    Cookbook
  • PHP并不难学,八分敲打,两分阅读,你能学得很快,用好REPL

    入门视频:

    入门视频推荐:哈佛大学公开课:构建动态网站

    Beginner PHP and MySQL Tutorial

    另,java版的 斯坦福大学公开课:编程方法学推荐看看。

    若实在想看国内的,可看下:慕课网-国内最大的IT技能学习平台

    关于书籍

    原则:只看国外的,只用Google,只用英文. 一般用图灵的技术书籍。
    

    推荐书籍:

    1. 入门篇:《PHP和MySQL Web开发(第四版)》
    2. 进阶篇:《深入PHP 面向对象、模式与实践》
    3. 钻研篇:《代码大全》《重构 改善既有代码的设计》《程序员修炼之道 从小工到专家》《人月神话》,其他:数据结构与算法、设计模式、安全、最佳实践。

    在线教程

    1. 推荐一个在线学习: Introduction to PHP

    其他资源

    1. 基础,官方文档 PHP: Hypertext Preprocessor
    2. 关于问答,使用Stack Overflow(任何疑问,用g),Quora
      - Your Best Source for Knowledge (业余时间看看),What are the best blogs for a PHP developer?,国内:德问:编程社交问答,php
      - SegmentFault
    3. 其他教程,推荐 SitePoint PHP ,http://code.tutsplus.com/categories/php
    4. 使用一个MVC框架,从面向对象开始,远离面向过程,推荐laravel ,初学可CI入门
    5. 不停的做项目。coding到一定数量,才会明白其中道理
    6. 做好的程序员,远离百度,使用Google,学会用英语搜索
    7. PHP之道:PHP: The Right Way
    8. PHP 最佳实践: 一份简短的关于 PHP 容易混淆知识点的实用指南
    9. 国内博客:风雪之隅-Laruence的博客 ,火丁笔记,杨建:网站加速--Cache为王篇
      ,张宴博客.
    10. Github资源:justjavac/free-programming-books-zh_CN · GitHubjustjavac/free-programming-books-zh_CN
      · GitHubnemoTyrant/manong · GitHub

    PHP官方文档就是很好的入门学习资料,里面提供了大量示例代码可以练习。实验楼的基础课PHP
    - PHP编程语言 就是基于官方文档《PHP参考手册》中文版制作,提供在线练习环境,可以边看教程边实践。如果是零基础,建议先从HTML、CSS、Js等一些基础入手,可以参考这条学习路径PHP研发工程师

    基础语法熟悉后可以做些PHP相关的小项目快速上手。下面的项目课程都是免费的,可以找感兴趣的练练手。

    1.PHP
    - PHP留言本

    非常适合PHP入门的一个小项目,内容涉及jQuery、Ajax、PHP和MySQL等技术。常用作网站的留言反馈部分。

    2.PHP
    - 转盘抽奖

    使用javascript、html、css、jquery和php实现一个转盘抽奖,让你窥探抽奖背后的秘密。

    3.PHP
    - 校花评比排名项目-PHP

    分析利用《社交网络》中评比算法,通过两两美女之间比较,计算出颜值,得出美女排名。PHP结合前端相关技术实现。

    4.PHP
    - Laravel实现用户注册登录

    这个项目主要是带大家上手PHP最优雅的框架Laravel,从零开始实现网站开发的用户注册和登录,并在这个过程中逐步熟悉Laravel。

    5.PHP
    - PHP会话控制

    实例讲解PHP中cookie和session原理以及在web开发中的应用。

    6.PHP
    - ThinkPHP实现云书签

    学习ThinkPHP实现服务器端的相关功能,利用AmazeUI和jQuery实现前端功能和交互,利用json完成客户端与服务器间的通讯。

  • 时间: 2024-10-11 10:47:16

    PHP 入门学习教程及进阶(源于知乎网友的智慧)的相关文章

    Linux入门学习教程:虚拟机体验之KVM篇

    在上一篇中,我展示了虚拟机软件QEMU的使用.效果及其性能,同时也分析了不同用户对虚拟机的不同追求.但是不管是桌面用户还是企业级用户,对虚拟机 软件的追求有一点是共同的,那就是性能.QEMU是一个强大的虚拟机软件,它可以完全以软件的形式模拟出一台完整的电脑所需的所有硬件,甚至是模拟出不同 架构的硬件,在这些虚拟的硬件之上,可以安装完整的操作系统.QEMU的运行模式如下图: 很显然,这种完全以软件模拟硬件的形式虽然功能强大,但是性能难以满足用户的需要.模拟出的硬件的性能和物理硬件的性能相比,必然会

    ECharts入门学习教程

    ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等),底层依赖轻量级的 Canvas 类库 ZRender,提供直观,生动,可交互,可高度个性化定制的数据可视化图表.这里给大家讲解两个案例带大家入门ECharts. 入门 Demo 01 如下面 demo 展示,我们尝试插入一个简单的柱形图: 下载 ECharts ,由于是初学,随便下什么版本.然后像普通引入外部

    Java入门学习教程视频

    对于Java入门基础学习是必要,特别面向对象的学习,是基础也是掌握Java及运用的核心部分! 以下提供两个学习Java入门材料, http://www.jikexueyuan.com/ 极客学院,基础入门的一些知识的实践操作视频教程,简洁易懂 http://www.runoob.com/java/java-tutorial.html Java菜鸟教程,对于java语法了解是很有帮助的 通过以上学习,对Java就也个比较基础认识,也可使用工具进行一些简单编程操作.

    Julia 入门学习教程

    有一门语言,它看起来像 Python ,感觉起来像 Lisp ,运行起来又像 C 一样快速,他就是Julia. 近年来,Julia 语言已然成为编程界的新宠,尤其在科学计算和人工智能领域炙手可热. 据 Julia Computing 的宣传,在七项基础算法的测试中,Julia 比 Python 快 20 倍,比 R 快 100 倍,比 Matlab 快 93 倍. 为什么 Julia 能做到这些,看一下它的开发者的初衷: "我们想要的是一种自由开源的语言,它同时拥有 C 的速度和 Ruby 的动

    Python入门学习教程:数据库操作,连接MySql数据库

    各位志同道合的同仁可以点击上方关注↑↑↑↑↑↑ 本教程致力于程序员快速掌握Python语言编程. 本文章内容是基于上次课程Python教程:Python教程:连接数据库,对数据进行增删改查操作 和python基础知识之上进行的.如想学习python基础请移步:Python开发实战系列教程-链接汇总,持续更新. 数据库增删改查操作. 我们打开Navicat 创建一个数据库Manager,并且创建一个数据表:Student 并添加初始化数据: 传统方式进行增删改查: 传统方式进行数据库的连接,可以使

    MyBatis入门学习教程-调用存储过程

    一.提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二.准备数据库表和存储过程 1 create table p_user( 2 id int primary key auto_increment, 3 name varchar(10), 4 sex char(2) 5 ); 6 7 insert into p_user(name,sex) values('A',"男"); 8 insert into p_user(name,sex) values('B',&qu

    C语言入门学习教程-1.搭建开发环境

    学习一门好的编程语言,对于一个网络安全爱好者来说就如同手持一把利剑.而对于学习安全的人来说最好的编程语言一定是越贴近底层越好.所以,推荐大家学习C语言.为了方便大家学习,我就将我学习C语言时的学习笔记进行了整理,发到我的博客上http://2937605316.blog.51cto.com/.每日更新,欢迎订阅.(求赞,求转!:)),也欢迎想要学习网络安全的朋友加入我们"VirtualSec|虚拟安全"小组(如果,想要加入的可以联系我QQ:2937605316). 那么说了这么多,就开

    C语言入门学习教程-2-hello world!

    从这开始,我将带领各位小白,开始编程... 第一个C语言程序Hello World!: 1  #include "stdio.h"  //包含头文件 2  int main()            //定义mian函数 3  { 4     printf("Hello World!");      //输出字符串 5    return 0;                //返回0 6 } 那么,我们可以清楚的看到这个程序一共有由4个部分组成:包含头文件→定义m

    Docker学习总结(5)——超实用Docker入门学习教程

    Docker是什么 Docker是一种容器技术,它可以将应用和环境等进行打包,形成一个独立的,类似于iOS的APP形式的"应用",这个应用可以直接被分发到任意一个支持Docker的环境中,通过简单的命令即可启动运行.Docker是一种最流行的容器化实现方案.和虚拟化技术类似,它极大的方便了应用服务的部署:又与虚拟化技术不同,它以一种更轻量的方式实现了应用服务的打包.使用Docker可以让每个应用彼此相互隔离,在同一台机器上同时运行多个应用,不过他们彼此之间共享同一个操作系统.Docke