㈠ php学习有什么要求
HP 学习目录
├─PHP视频教程 1 LAMP网站构建
│ ├─PHP教程 1.1.1 新版视频形式介绍
│ ├─PHP教程 1.1.2 BS结构软件类型介绍
│ ├─PHP教程 1.1.3 现在是Web2.0的时代
│ ├─PHP教程 1.1.4 Web开发标准
│ ├─PHP教程 1.1.5 认识脚本语言
│ ├─PHP教程 1.2.1 动态网站开发所需的web构件1
│ ├─PHP教程 1.2.2 动态网站开发所需的web构件2
│ ├─PHP教程 1.2.3 动态网站开发所需的web构件3
│ ├─PHP教程 1.3.1 Web的工作原理
│ ├─PHP教程 1.3.2 Web工作原理之url解析
│ ├─PHP教程 1.3.3 Web工作原理之动态网站解析
│ ├─PHP教程 1.4.1 介绍了三种主流的Web应用平台
│ ├─PHP教程 1.4.2 主要三种Web平台进行对比
│ └─PHP教程 1.5.1 介绍LAMP网站开发组合概述及发展趋势
├─PHP视频教程 2 从搭建你的PHP开发环境开始
│ ├─PHP教程 2.1.1 PHP的几种运行环境
│ ├─PHP教程 2.2.1 安装PHP的运行环境
│ └─PHP教程 2.2.2 PHP运行环境的介绍
├─PHP视频教程 3 PHP基本语法
│ ├─PHP教程 3.1.1 PHP的功能介绍
│ ├─PHP教程 3.2.1 第一个PHP程序
│ ├─PHP教程 3.3.1 PHP语言标记及指令分隔符“分号”
│ ├─PHP教程 3.3.2 PHP程序注释及空白的使用
│ ├─PHP教程 3.4.1 PHP变量在计算机内存中的存储方式
│ ├─PHP教程 3.4.2 PHP变量的声明及变量的命名
│ ├─PHP教程 3.4.3 PHP可变变量
│ ├─PHP教程 3.4.4 PHP引用变量1
│ ├─PHP教程 3.4.5 PHP引用变量2
│ ├─PHP教程 3.5.1 PHP变量类型的介绍
│ ├─PHP教程 3.5.2 PHP布尔类型(boolean)
│ ├─PHP教程 3.5.3 PHP整型(integer)和浮点型(float或double)
│ ├─PHP教程 3.5.4 PHP字符串的声明及定义
│ ├─PHP教程 3.5.5 PHP字符串中单双引号的区别
│ ├─PHP教程 3.5.6 PHP字符串的定界符声明
│ ├─PHP教程 3.5.7 PHP变量的其它数据类型
│ ├─PHP教程 3.6.1 PHP数据类型转换及强制类型转换
│ ├─PHP教程 3.6.2 PHP数据类型转换之自动类型转换
│ ├─PHP教程 3.7.1 PHP常量的介绍
│ ├─PHP教程 3.7.2 PHP常量的声明和使用
│ ├─PHP教程 3.7.3 预定义常量
│ ├─PHP教程 3.8.1 PHP中的运算符号有哪些
│ ├─PHP教程 3.8.2 PHP算术运算符
│ ├─PHP教程 3.8.3 PHP自加自减运算
│ ├─PHP教程 3.8.4 PHP自加自减运算需要注意的地方
│ ├─PHP教程 3.8.5 PHP赋值运算符
│ ├─PHP教程 3.8.6 PHP比较运算符
│ ├─PHP教程 3.8.7 PHP逻辑运算符
│ ├─PHP教程 3.8.8 PHP逻辑运算符的特性(短路)
│ ├─PHP教程 3.8.9 PHP中的位运算符1
│ ├─PHP教程 3.8.10 PHP中的位运算符2
│ ├─PHP教程 3.8.11 PHP中的位运算符3
│ ├─PHP教程 3.8.12 PHP其他运算符
│ └─PHP教程 3.8.13 PHP运算符的优先级和表达式
├─PHP视频教程 4 PHP的流程控制结构
│ ├─PHP教程 4.1.1 PHP流程控制概述
│ ├─PHP教程 4.1.2 PHP分支结构
│ ├─PHP教程 4.2.1 PHP单一条件分支结构和双向条件分支结构
│ ├─PHP教程 4.2.2 58PHP多向条件分支结构(elseif子句)
│ ├─PHP教程 4.2.3 PHP多向条件分支(switch语句)1
│ ├─PHP教程 4.2.4 PHP多向条件分支(switch语句)2
│ ├─PHP教程 4.2.5 PHP巢状分支结构
│ ├─PHP教程 4.2.6 PHP实例(简单计算器)1
│ ├─PHP教程 4.2.7 PHP实例(简单计算器)2
│ ├─PHP教程 4.2.8 PHP实例(简单计算器)3
│ ├─PHP教程 4.2.9 PHP实例(简单计算器)4
│ ├─PHP教程 4.3.1 PHP循环结构的介绍
│ ├─PHP教程 4.3.2 PHP循环结构while语句
│ ├─PHP教程 4.3.3 PHP循环结构while的应用
│ ├─PHP教程 4.3.4 PHP循环结构do-while语句
│ ├─PHP教程 4.3.5 PHP循环结构for语句
│ ├─PHP教程 4.3.6 PHP循环结构for语句的应用
│ ├─PHP教程 4.3.7 特殊流程控制语句
│ └─PHP教程 4.3.8 PHP流程控制语句goto
├─PHP视频教程 5 PHP的函数应用
│ ├─PHP教程 5.1.1 PHP函数的定义和应用
│ ├─PHP教程 5.2.1 PHP自定义函数的语法格式
│ ├─PHP教程 5.2.2 PHP自定义函数中的参数
│ ├─PHP教程 5.2.3 PHP自定义函数中的返回值(return)
│ ├─PHP教程 5.3.1 PHP局部变量
│ ├─PHP教程 5.3.2 PHP全局变量
│ ├─PHP教程 5.3.3 PHP静态变量
│ ├─PHP教程 5.4.1 PHP常规参数的函数
│ ├─PHP教程 5.4.2 PHP引用参数的函数
│ ├─PHP教程 5.4.3 PHP默认参数的函数
│ ├─PHP教程 5.4.4 PHP可变个数参数的函数
│ ├─PHP教程 5.4.5 PHP变量函数
│ ├─PHP教程 5.4.6 PHP回调函数
│ ├─PHP教程 5.4.7 PHP制作回调函数1
│ ├─PHP教程 5.4.8 PHP制作回调函数2
│ ├─PHP教程 5.4.9 PHP制作回调函数3
│ ├─PHP教程 5.4.10 PHP系统函数
│ ├─PHP教程 5.5.1 PHP递归函数
│ ├─PHP教程 5.6.1 PHP加载自定义的函数库
│ ├─PHP教程 5.7.1 PHP5.3的新特性匿名函数
│ ├─PHP教程 5.8.1 PHP闭包函数(closures)的概念
│ └─PHP教程 5.8.2 PHP闭包函数(closures)的特性
├─PHP视频教程 6 PHP中的数组与数据结构
│ ├─PHP教程 6.1.1 PHP数组的概述
│ ├─PHP教程 6.1.2 PHP数组的基本概念及分类
│ ├─PHP教程 6.2.1 PHP数组声明的特性
│ ├─PHP教程 6.2.2 PHP索引和关联数组及需要注意的细节
│ ├─PHP教程 6.2.3 PHP使用array()声明数组
│ ├─PHP教程 6.2.4 PHP删除数组中的值应用实例(猴子选大王)
│ ├─PHP教程 6.2.5 PHP二维数组
│ ├─PHP教程 6.2.6 PHP多维数组
│ ├─PHP教程 6.3.1 使用for循环遍历数组
│ ├─PHP教程 6.3.2 使用foreach语句遍历数组
│ ├─PHP教程 6.3.3 使用foreach语句遍历数组的应用
│ ├─PHP教程 6.3.4 list()函数的语法结构
│ ├─PHP教程 6.3.5 each()函数的特性
│ ├─PHP教程 6.3.6 使用list( )、each( )和while循环遍历数组
│ ├─PHP教程 6.3.7 使用数组的内部指针控制函数遍历数组
│ ├─PHP教程 6.4.1 PHP超全局数组(预定义变量)概述
│ ├─PHP教程 6.4.2 服务器变量$_SERVER和环境变量$_ENV
│ ├─PHP教程 6.4.3 PHP超全局数组介绍1
│ ├─PHP教程 6.4.4 PHP超全局数组介绍2
│ ├─PHP教程 6.5.1 PHP常用数组函数的分类
│ ├─PHP教程 6.5.2 PHP数组中和键值搜索相关的函数1
│ ├─PHP教程 6.5.3 PHP数组中和键值搜索相关的函数2
│ ├─PHP教程 6.5.4 PHP数组中和键值搜索相关的函数3
│ ├─PHP教程 6.5.5 PHP数组中统计数组元素的个数与唯一性的函数
│ ├─PHP教程 6.5.6 PHP使用回调函数处理数组的函数array_filter()
│ ├─PHP教程 6.5.7 PHP使用回调函数处理数组的函数array_walk()
│ ├─PHP教程 6.5.8 PHP使用回调函数处理数组的函数array_map()
│ ├─PHP教程 6.5.9 PHP中的冒泡(起泡)排序算法
│ ├─PHP教程 6.5.10 PHP二分法进行快速排序的原理
│ ├─PHP教程 6.5.11 使用PHP程序进一步理解快速排序法
│ ├─PHP教程 6.5.12 PHP数组的排序函数1
│ ├─PHP教程 6.5.13 PHP数组的排序函数2
│ ├─PHP教程 6.5.14 PHP数组的排序函数3
│ ├─PHP教程 6.5.15 PHP多维数组的排序函数
│ ├─PHP教程 6.5.16 PHP拆分、合并、分解与结合数组函数1
│ ├─PHP教程 6.5.17 PHP拆分、合并、分解与结合数组函数2
│ ├─PHP教程 6.5.18 PHP数组与数据结构的函数
│ └─PHP教程 6.5.19 PHP其他有用的数组处理函数
─PHP视频教程 7 PHP面向对象的程序设计
├─PHP教程 7.1.1 PHP面向对象之面向过程详解
├─PHP教程 7.1.2 PHP面向对象之面向对象编程思想详解
├─PHP教程 7.1.3 PHP面向对象的重要优势及案例分析
├─PHP教程 7.1.4 PHP类和对象之间的关系
├─PHP教程 7.2.1 PHP如何抽象一个类
├─PHP教程 7.2.2 PHP类中的成员属性和成员方法
├─PHP教程 7.3.1 PHP实例化对象
├─PHP教程 7.3.2 PHP画图理解对象在内存中的形式
├─PHP教程 7.3.3 特殊的对象引用”$this”
├─PHP教程 7.3.4 PHP构造方法
├─PHP教程 7.3.5 PHP析构方法
├─PHP教程 7.4.1 复习前面的面向对象知识
├─PHP教程 7.5.1 PHP面向对象封装性1
├─PHP教程 7.5.2 PHP面向对象封装性2](http://www.jianshu.com/p/2713d9252da4)
├─PHP教程 7.5.3 PHP面向对象封装性之魔术方法1
├─PHP教程 7.5.4 PHP面向对象封装性之魔术方法2
├─PHP教程 7.6.1 PHP类的继承
├─PHP教程 7.6.2 PHP类的访问类型控制
├─PHP教程 7.6.3 PHP继承中的重载(覆盖)
├─PHP教程 7.7.1 PHP常见的关键字
├─PHP教程 7.7.2 static关键字的使用1
├─PHP教程 7.7.3 static关键字的使用2
├─PHP教程 7.7.4 单态(单例、单件)设计模式
├─PHP教程 7.7.5 const关键字
├─PHP教程 7.7.6 魔术方法__toString()
├─PHP教程 7.7.7 魔术方法__clone()
├─PHP教程 7.7.8 魔术方法__call()
├─PHP教程 7.7.9 对象串行化(序列化)1
├─PHP教程 7.7.10 对象串行化(序列化)2
├─PHP教程 7.7.11 PHP数组的串行化(JSON格式)
├─PHP教程 7.7.12 魔术方法__set_state()
├─PHP教程 7.7.13 PHP 5.3以后新增的魔术方法
├─PHP教程 7.7.14 自动加载类__autoload()
├─PHP教程 7.8.1 PHP抽象方法和抽象类1
├─PHP教程 7.8.2 PHP抽象方法和抽象类2
├─PHP教程 7.8.3 PHP面向对象接口技术
├─PHP教程 7.8.4 PHP接口应用的一些细节
├─PHP教程 7.8.5 PHP面象对象的特性多态
├─PHP教程 7.9.1 PHP多态的应用实例
├─PHP教程 7.10.1 PHP图形计算器需求分析
├─PHP教程 7.10.2 PHP图形计算器功能设计
├─PHP教程 7.10.3 PHP图形计算器主程序的实现
├─PHP教程 7.10.4 PHP图形计算器主程序的步骤及代码
├─PHP教程 7.10.5 PHP图形计算器主程序完成检验
├─PHP教程 7.11.1 与类有关的魔术常量和函数
├─PHP教程 7.12.1 PHP命名空间的概述
├─PHP教程 7.12.2 PHP定义子命名空间
├─PHP教程 7.12.3 PHP在同一文件中定义多个命名空间
├─PHP教程 7.12.4 PHP命名空间和动态语言特征
└─PHP教程 7.12.5 PHP使用命名空间:别名导入
├─PHP视频教程 8 PHP字符串处理
│ ├─PHP教程 8.1.1 字符串的处理方式1
│ ├─PHP教程 8.1.2 字符串的处理方式2
│ ├─PHP教程 8.2.1 常用的字符串输出函数1
│ ├─PHP教程 8.2.2 常用的字符串输出函数2
│ ├─PHP教程 8.3.1 去除空格和字符串填补及大小写转换函数
│ ├─PHP教程 8.3.2 和HTML标签相关的字符串格式化函数
│ ├─PHP教程 8.3.3 字符串格式化函数
│ ├─PHP教程 8.4.1 字符串比较函数
│ ├─PHP教程 8.5.1 字符串面试题1
│ ├─PHP教程 8.5.2 字符串面试题2
│ └─PHP教程 8.5.3 字符串面试题3
├─PHP视频教程 9 PHP正则表达式
│ ├─PHP教程 9.1.1 选择PHP正则表达式的处理函数库
│ ├─PHP教程 9.2.1 正则表达式语法介绍1
│ ├─PHP教程 9.2.2 正则表达式语法介绍2
│ ├─PHP教程 9.2.3 正则表达式中的原子1
│ ├─PHP教程 9.2.4 正则表达式中的原子2
│ ├─PHP教程 9.2.5 正则表达式中的元字符1
│ ├─PHP教程 9.2.6 正则表达式中的元字符2
│ ├─PHP教程 9.2.7 正则表达式中元字符中的小括号
│ ├─PHP教程 9.2.8 模式修正符(单个字符)1
│ ├─PHP教程 9.2.9 模式修正符(单个字符)2
│ ├─PHP教程 9.3.1 字符串的匹配与查找之(strstr、strpos、substr)
│ ├─PHP教程 9.3.2 字符串的匹配与查找之(preg_match)
│ ├─PHP教程 9.3.3 字符串的匹配与查找之(preg_match_all与preg_grep)
│ ├─PHP教程 9.3.4 字符串的分割与连接(explode、implode join、preg_split)
│ ├─PHP教程 9.3.5 字符串的替换(str_replace)
│ ├─PHP教程 9.3.6 字符串的替换(preg_replace)1
│ ├─PHP教程 9.3.7 字符串的替换(preg_replace)2
│ ├─PHP教程 9.3.8 字符串中正则的其它函数
│ ├─PHP教程 9.2.10 如何自己编写正则表达式(url)
│ └─PHP教程 9.2.11 编写email正则表达式
├─PHP视频教程 10 PHP的错误和异常处理
│ ├─PHP教程 10.1.1 错误报告及设置级别
│ ├─PHP教程 10.1.2 自定义PHP的错误报告处理方式
│ ├─PHP教程 10.1.3 设置错误日志
│ ├─PHP教程 10.2.1 PHP异常处理1
│ ├─PHP教程 10.2.2 PHP异常处理2
│ ├─PHP教程 10.2.3 自定义异常类
│ └─PHP教程 10.2.4 捕获多个异常
├─PHP视频教程 11 PHP日期时间
│ ├─PHP教程 11.1.1 PHP中应用日期和时间1
│ ├─PHP教程 11.1.2 PHP中应用日期和时间2
│ └─PHP教程 11.1.3 PHP日历核心程序编写
├─PHP视频教程 12 PHP文件系统处理
│ ├─PHP教程 12.1.1 文件系统概述
│ ├─PHP教程 12.1.2 文件的属性
│ ├─PHP教程 12.2.1 解析目录路径
│ ├─PHP教程 12.2.2 遍历目录
│ ├─PHP教程 12.2.3 统计目录中的个数和大小
│ ├─PHP教程 12.2.4 建立与删除目录
│ ├─PHP教程 12.2.5 复制、移动目录
│ ├─PHP教程 12.3.1 文件的一些基本操作函数
│ ├─PHP教程 12.3.2 文件的打开与关闭
│ ├─PHP教程 12.3.3 文件的内容操作
│ ├─PHP教程 12.3.4 简单留言版
│ ├─PHP教程 12.3.5 文件的锁定机制
│ ├─PHP教程 12.4.1 文件上传的设置
│ ├─PHP教程 12.4.2 文件上传的处理
│ ├─PHP教程 12.4.3 处理多个文件上传
│ ├─PHP教程 12.4.4 文件上传类
│ └─PHP教程 12.4.5 文件下载
─PHP视频教程 13 GD库
│ ├─PHP教程 13.1.1 PHP中GD库的使用
│ ├─PHP教程 13.1.2 使用GD库画图
│ ├─PHP教程 13.1.3 绘制各种图形
│ ├─PHP教程 13.1.4 画时钟
│ ├─PHP教程 13.2.1 设计验证码类
│ ├─PHP教程 13.2.2 验证码类的编写1
│ ├─PHP教程 13.2.3 验证码类的编写2
│ ├─PHP教程 13.2.4 验证码类完善
│ ├─PHP教程 13.3.1 图片背景管理
│ ├─PHP教程 13.3.2 图片的缩放和剪切
│ ├─PHP教程 13.3.3 添加图片水印
│ ├─PHP教程 13.3.4 图片的旋转和翻转
│ └─PHP教程 13.3.5 图像处理类
├─PHP视频教程 14 数据库
│ ├─PHP教程 14.1.1 复习数据库
│ ├─PHP教程 14.1.2 phpMyAdmin的使用
│ ├─PHP教程 14.1.3 php访问MySQL
│ ├─PHP教程 14.1.4 在PHP脚本中操作MySQL数据库1
│ ├─PHP教程 14.1.5 在PHP脚本中操作MySQL数据库2
│ ├─PHP教程 14.1.6 在PHP脚本中操作MySQL数据库3
│ ├─PHP教程 14.1.7 在PHP脚本中操作MySQL数据库4
│ ├─PHP教程 14.2.1 分页需求分析
│ ├─PHP教程 14.2.2 分页类中分页的编写
│ ├─PHP教程 14.2.3 分页类中列表页的编写
│ ├─PHP教程 14.2.4 分页类的优化
│ ├─PHP教程 14.2.5 《细说PHP》分页类的使用
│ ├─PHP教程 14.3.1 图书管理需求分析
│ ├─PHP教程 14.3.2 添加图书
│ ├─PHP教程 14.3.3 图书列表
│ ├─PHP教程 14.3.4 修改图书
│ ├─PHP教程 14.3.5 删除图书
│ ├─PHP教程 14.3.6 上传图书封面
│ ├─PHP教程 14.3.7 修改图书封面
│ ├─PHP教程 14.3.8 图书列表分页
│ └─PHP教程 14.3.9 多搜索加分页
├─PHP视频教程 15 PDO
│ ├─PHP教程 15.1.1 数据库抽象层PDO
│ ├─PHP教程 15.1.2 创建PDO对象
│ ├─PHP教程 15.1.3 PDO与连接有关的选项
│ ├─PHP教程 15.1.4 PDO的错误处理模式
│ ├─PHP教程 15.1.5 使用PDO执行SQL语句
│ ├─PHP教程 15.1.6 PDO事务处理
│ ├─PHP教程 15.2.1 PDO对预处理语句的支持
│ ├─PHP教程 15.2.2 使用PDO准备语句并执行语句1
│ ├─PHP教程 15.2.3 使用PDO准备语句并执行语句2
│ ├─PHP教程 15.2.4 PDO的预处理查询1
│ ├─PHP教程 15.2.5 PDO的预处理查询2
│ └─PHP教程 15.2.6 用PDO存取大数据对象
├─PHP视频教程 16 memcache管理与应用
│ ├─PHP教程 16.1.1 memcache应用说明
│ ├─PHP教程 16.1.2 memcache工作原理
│ ├─PHP教程 16.1.3 memcache的安装
│ ├─PHP教程 16.1.4 Memcache的常用命令操作
│ ├─PHP教程 16.1.5 php的memcache功能扩展模块安装
│ ├─PHP教程 16.1.6 PHP中操作memcache
│ ├─PHP教程 16.1.7 在PHP中设置分布式memcache存取1
│ └─PHP教程 16.1.8 在PHP中设置分布式memcache存取2
─PHP视频教程 17 PHP会话控制
├─PHP教程 17.1.1 http协议和web本质1
├─PHP教程 17.1.2 http协议和web本质2
├─PHP教程 17.1.3 http协议和web本质3
├─PHP教程 17.2.1 会话控制概述
├─PHP教程 17.3.1 会话控制之Cookie概述
├─PHP教程 17.3.2 Cookie的操作
├─PHP教程 17.3.3 Cookie的应用1
├─PHP教程 17.3.4 Cookie的应用2
├─PHP教程 17.4.1 会话控制session的工作机制
├─PHP教程 17.4.2 session的应用
├─PHP教程 17.4.3 session的配置选项
├─PHP教程 17.4.4 sessoion自动垃圾回收机制
├─PHP教程 17.4.5 基于url传递session的id
├─PHP教程 17.4.6 邮件系统实例1
├─PHP教程 17.4.7 邮件系统实例2
├─PHP教程 17.5.1 自定义session的存储机制
├─PHP教程 17.5.2 如何自定义session的处理方式1
├─PHP教程 17.5.3 如何自定义session的处理方式2
├─PHP教程 17.5.4 自定义session类
├─PHP教程 17.5.5 使用数据库来存储session信息1
├─PHP教程 17.5.6 使用数据库来存储session信息2
├─PHP教程 17.5.7 使用数据库来存储session信息3
└─PHP教程 17.5.8 使用memcache来存储session
PHP视频教程 18 PHP的模板引擎Smarty
├─PHP教程 18.1.1 什么是模板引擎
├─PHP教程 18.2.1 自定义模板引擎类1
├─PHP教程 18.2.2 自定义模板引擎类2
├─PHP教程 18.2.3 使用自定义的模板引擎
├─PHP教程 18.3.1 选择Smarty模板引擎
├─PHP教程 18.3.2 Smarty的安装初使化示例1
├─PHP教程 18.3.3 Smarty的安装初使化示例2
├─PHP教程 18.3.4 需要学习Smarty的哪儿些内容
├─PHP教程 18.4.1 模板中的变量应用
├─PHP教程 18.4.2 从配置文件读取变量
├─PHP教程 18.4.3 在模板中使用保留变量
├─PHP教程 18.5.1 变量调节(修改)器
├─PHP教程 18.5.2 变量调节(修改)器和应用
├─PHP教程 18.5.3 使用registerPlugin来注册变量调节器
├─PHP教程 18.5.4 使用插件来注册变量调节器
├─PHP教程 18.5.5 smarty中的函数
├─PHP教程 18.5.6 smarty中的内置函数
├─PHP教程 18.6.1 smarty中自定义函数
├─PHP教程 18.6.2 smarty中自定义函数插件实例
├─PHP教程 18.7.1 smarty中内置函数的使用
├─PHP教程 18.7.2 smarty变量声明
├─PHP教程 18.7.3 smarty流程控制
├─PHP教程 18.7.4 smarty中for、while循环
├─PHP教程 18.7.5 smarty中{function}标签
├─PHP教程 18.7.6 smarty2中的foreach
├─PHP教程 18.7.7 smarty3中的foreach
├─PHP教程 18.7.8 smarty中的section
├─PHP教程 18.8.1 smarty模板继承
├─PHP教程 18.9.1 页面静态化加分页原理
└─PHP教程 18.9.2 在smarty中控制缓存
㈡ PHP程序员要掌握的知识以及相关书籍
我认为,首先,要想成为一个程序员,C或者C++或者JAVA是必须选择一门掌握的,因为其中的编程思想和编程方法和这些语言所具有的广大使用群和库LIB是今后学习其他语言的巨大帮助。
其次,PHP是作为网页后台语言存在的,那么要想做后台,就要把前台的HTML,CSS,JS,flash,甚至是photoshop都要玩通。后台的话,需要补一下数据库和linux的知识。
最后推荐一些入门到中级的网站www.php100.com
视频PHP100出的教学视频,兄弟连-电驴上有 出的教学视频
这两个视频都有对应的书。
另外,网上可以下载到明日科技 这个团队出版的书籍 都配有光盘 光盘里边有不同功能模块(例如博客系统、商城系统、OA系统)的源码,多读这些源码,对编程帮助很大。
再到高级就是大数据存储、网络优化的东西了吧,我的水平还没接触到,你加油吧~
㈢ php教程之php的几种运行模式
php一共分为五大运行模式:包括cgi 、fast-cgi、cli、isapi、apache 模块的 DLLCGI
CGI即通用网关接口(Common Gateway Interface),它是一段程序,通俗的讲CGI就象是一座桥,把网页和WEB服务器中的执行程序连接起来,它把HTML接收的指令传递给服务器的执 行程序,再把服务器执行程序的结果返还给HTML页。CGI 的跨平台性能极佳,几乎可以在任何操作系统上实现。
CGI方式在遇到连接请求(用户 请求)先要创建cgi的子进程,激活一个CGI进程,然后处理请求,处理完后结束这个子进程。这就是fork-and-execute模式。所以用cgi 方式的服务器有多少连接请求就会有多少cgi子进程,子进程反复加载是cgi性能低下的主要原因。都会当用户请求数量非常多时,会大量挤占系统的资源如内 存,CPU时间等,造成效能低下。CGI-FCGI
fast-cgi 是cgi的升级版本,FastCGI像是一个常驻(long-live)型的CGI,它可以一直执行着,只要激活后,不会每次都要花费时间去fork一 次。PHP使用PHP-FPM(FastCGI Process Manager),全称PHP FastCGI进程管理器进行管理。FastCGI的工作原理
1、Web Server启动时载入FastCGI进程管理器(IIS ISAPI或Apache Mole)
2、FastCGI进程管理器自身初始化,启动多个CGI解释器进程(可见多个php-cgi)并等待来自Web Server的连接。
3、当客户端请求到达Web Server时,FastCGI进程管理器选择并连接到一个CGI解释器。Web server将CGI环境变量和标准输入发送到FastCGI子进程php-cgi。
4、 FastCGI子进程完成处理后将标准输出和错误信息从同一连接返回Web Server。当FastCGI子进程关闭连接时,请求便告处理完成。FastCGI子进程接着等待并处理来自FastCGI进程管理器(运行在Web Server中)的下一个连接。 在CGI模式中,php-cgi在此便退出了。在上述情况中,你可以想象CGI通常有多慢。每一个Web 请求PHP都必须重新解析php.ini、重新载入全部扩展并重初始化全部数据结构。使用FastCGI,所有这些都只在进程启动时发生一次。一个额外的 好处是,持续数据库连接(Persistent database connection)可以工作。APACHE2HANDLER
PHP作为Apache模块,Apache服务器在系统启动后,预先生成多个进程副本驻留在内存中,一旦有请求出 现,就立即使用这些空余的子进程进行处理,这样就不存在生成子进程造成的延迟了。这些服务器副本在处理完一次HTTP请求之后并不立即退出,而是停留在计 算机中等待下次请求。对于客户浏览器的请求反应更快,性能较高。
apache模块的DLL:
该运行模式是我们以前在windows环境下使用apache服务器经常使用的,而在模块化(DLL)中,PHP是与Web服务器一起启动并运行的。(是apache在CGI的基础上进行的一种扩展,加快PHP的运行效率)ISAPI:
ISAPI即Internet Server Application Program Interface,是微软提供的一套面向Internet服务的API接口
一个ISAPI的DLL,可以在被用户请求激活后长驻内存,等待用户的另一个请求,还可以在一个DLL里设置多个用户请求处理函数,此外,
ISAPI的DLL应用程序和WWW服务器处于同一个进程中,效率要显着高于CGI。(由于微软的排他性,只能运行于windows环境)cli:
cli是php的命令行运行模式,大家经常会使用它,但是可能并没有注意到(例如:我们在linux下经常使用 “php -m”查找PHP安装了那些扩展就是PHP命令行运行模式;有兴趣的同学可以输入php -h去深入研究该运行模式)总结:
每种运行模式都有自己的优缺点,没有绝对的好与坏,主要是看大家处理何种环境。
㈣ PHP的入门技巧有哪些
PHP 是一种开源的通用计算机脚本语言,尤其适用于网络开发并可嵌入HTML中使用。PHP的语法借鉴吸收了C语言、Java和Perl等流行计算机语言的特点,易于一般程序员学习。杭州这边到有码互联学习php还是挺好的,一般学习的都是3-4个月的学习,然后有2个月实训,这样下并键来就会增加自己的一些实战能力。PHP的主要目标是允许网络开发人员快速编写动态页面,但PHP也被用于其他很多领域。如果有其他编程语言的基础,那上手更容易。
1、PHP 安装与配置
新手建议使用PHP集成环境,Wampserver5。
Wamp就是Windows Apache Mysql PHP集成安装环境,即在window下的apache、php和mysql的服务器软件。
2、PHP 学习资料
建议参考w3school的PHP学习资料,绝春巧简单易懂,适合新手。
PHP视频教程,建议参考PHP100的视频教程,挺不错的。
3、PHP 相关学习资料
PHP 的主要应用是web应用,web应用是由多种技森扮术组成的。
学习PHP的同时,需要学习相关的其他技术。
SQL 是用于访问和处理数据库的标准的计算机语言
HTML 超文本标签语言
CSS 层叠样式表
JavaScript 世界上最流行的脚本语言
jQuery 是一个JavaScript库,极大地简化了 JavaScript 编程
㈤ 如何进阶学习php呢需要准备什么
我把别人写的文章,整理一段给你,写的挺好
原文:http:反和谐//www反和谐devstore反和谐cn/essay/essayInfo/6520反和谐html
第一阶段:基础阶段(基础PHP程序员)
重点:把LNMP搞熟练(核心是安装配置基本操作)
目标:能够完成基本的LNMP系统安装,简单配置维护;能够做基本的简单系统的PHP开发;能够在PHP中型系统中支持某个PHP功能模块的开发。
时间:完成本阶段的时间因人而异,有的成长快半年一年就过了,成长慢的两三年也有。
第二阶段:提高阶段 (中级PHP程序员)
重点:提高针对LNMP的技能,能够更全面的对LNMP有熟练的应用。
目标:能够随时随地搭建好LNMP环境,快速完成常规配置;能够追查解决大部分遇到的开发和线上环境的问题;能够独立承担中型系统的构架和开发工作;能够在大型系统中承担某个中型模块的开发工作;
第三阶段:高级阶段 (高级PHP程序员)
重点:除了基本的LNMP程序,还能够在某个方向或领域有深入学习。(纵深维度发展)
目标:除了能够完成基本的PHP业务开发,还能够解决大部分深入复杂的技术问题,并且可以独立设计完成中大型的系统设计和开发工作;自己能够独立hold深入某个技术方向,在这块比较专业。(比如在MySQL、Nginx、PHP、Redis等等任一方向深入研究)