• 1. 《学PHP必看教程》 从入门到精通(完整版) 兹帝 ★★★强烈推荐★★★ (新手必读)
  • 2. (第一讲) PHP环境搭配和代码调试PHP100视频教程本讲大纲:1、PHP的优势和背景2、PHP环境的搭配3、PHP常用工具和数据库常用工具4、书写和调试简单的PHP代码4、如何处理简单的PHP错误演讲老师:张恩民 支持网站:www.php100.com
  • 3. (第一讲) PHP环境搭配和工具的使用PHP100视频教程1、PHP的优势和背景PHP是能让你生成动态网页的工具之一。PHP代表:超文本预处理器 (PHP: Hypertext Preprocessor)。PHP是完全免费的,不用花钱, 你可以从PHP官方站点(http://www.php.net )自由下载。 我个人更喜欢PHP的非常简单的学习过程。与Java和Perl不同,你不必把头埋进 100多页的文档中努力学习才可以写出一个象样的程序。只要了解一些基本的语 法和语言特色,你就可以开始你的PHP编码之旅了。之后你在编码过程中如果遇 到了什么麻烦,还可以再去翻阅相关文档。 PHP的语法类似于C,Perl,ASP或者JSP。对于那些对上述之一的语言较熟悉的 人来说,PHP太简单了 。当然你没有任何基础也是可以学习的。 如果更好的学习建议可以先看看些 HTML 和 SQL 的基础,当然今后如果牵扯到这 方面的知识我也会尽量详细的讲解下我英文不好能学习吗? 回答是YSE 我数学不好能学吗? 回答是YES 我没有基础看这个视频学习能学吗? 回答也是YES 我没耐心能学吗? 回答是NO~
  • 4. (第一讲) PHP环境搭配和代码调试PHP100视频教程2、PHP环境的搭配所需的工具: WampServer 5 集成环境 Wamp5是Apache+PHP+Mysql 在Windows下的集成环境,拥有简单的图形和 菜单安装。该版本集成了PHP5.2.5 Mysql5 Apache2 phpMyAdmin 2.11.2.1 SQLiteManager 1.2.0 满了大部分PHPer的需求…下载地址:www.php100.com 注意事项:1、增加PHP支持组件 2、增加Apache组件 3、PHP.ini Http.conf 的简单介绍
  • 5. (第一讲) PHP环境搭配和代码调试PHP100视频教程3、PHP常用工具和数据库常用工具下载地址:www.php100.com www.zend.com www.mysql.com PHP开发工具:Zend Stodio ,PHPedit , EditPlus 2 ,easyeclipse ,DW 等MYSQL工具:MYSQL Administrator
  • 6. (第一讲) PHP环境搭配和代码调试PHP100视频教程4、书写和调试简单的PHP代码从语法上看,PHP语言近似于C语言。可以说,PHP是借鉴C语言的语法特征,由C语言改 进而来的。我们可以混合编写PHP代码和HTML代码,不仅可以将PHP脚本嵌入到 HTML 文件中,我们甚至还可以把 HTML 标签也嵌入在 PHP 脚本里。以下是你可以采用的几种方法。 你可以选用其中一种你最适合的并且就这样坚持这种方法! 从HTML中分离 以下是可以使用的方法: <% . . . %>与Perl和C一样,在PHP中用“;”来分隔语句。那些从HTML中分离出来的标志也表示语句的结束。 注释 PHP支持C,C 和Unix风格的注释方式: /* C,C 风格多行注释 */ // C 风格单行注释 # Unix风格单行注释
  • 7. (第一讲) PHP环境搭配和代码调试PHP100视频教程4、如何处理简单的PHP错误1、你要把PHP.ini 里的 display_errors   =   On 才可以显示错误位置2、习惯使用echo 或者 print 打印3、学会使用注释来屏蔽符号来调试 // ………. /*………… */ #..............4、要懂得看错误信息(英文不熟悉阿拉伯数字总认识吧)
  • 8. (第一讲) PHP环境搭配和代码调试PHP100视频教程还有什么疑问可以到www.php100.com 提出 也可以以发送邮件到 haowubai@hotmail.com (msn)感谢收看本次教程! 本次演讲老师:张恩民
  • 9. (第二讲) PHP的数据类型 源码调试PHP100视频教程本讲大纲:1、PHP基本语法和数据类型2、学习一个PHP源码调试 (discuz论坛)演讲老师:张恩民 支持网站:www.php100.com
  • 10. (第二讲) PHP的数据类型 源码调试PHP100视频教程1、PHP基本语法和数据类型:(1)、PHP基本语法:(2)、PHP数据运算类型1、htm 和 php 混编 2、一个语句以 ; (分号结束) 3、如何定义一个变量,和变量的使用四种标量类型: boolean(布尔型) 理解为真假型 integer(整型) float(浮点型,也作“double”) 理解为小数型 string(字符串) 两种复合类型: array(数组) object(对象)
  • 11. (第二讲) PHP的数据类型 源码调试PHP100视频教程boolean(布尔型) 理解为真假型 $bo=TRUE; $bo=FALSE; integer(整型) $bo=1; $bo=-12; float(浮点型,也作“double”) 理解为小数型 $bo=1.001; $bo=3.1415926; string(字符串) $bo=“这段字符串 or EN Word”; array(数组) $bo=array(1,2,3,4); $bo=array(“A”=>1 , “B”=>2);
  • 12. (第二讲) PHP的数据类型 源码调试PHP100视频教程 1、 解压源码到网站目录 2、 按照数据库 3、调试成功
  • 13. (第二讲) PHP的数据类型 源码调试PHP100视频教程还有什么疑问可以到www.php100.com 提出 也可以以发送邮件到 haowubai@hotmail.com (msn)感谢收看本次教程! 本次演讲老师:张恩民
  • 14. (第三讲) 常用PHP运算类型介绍与应用PHP100视频教程本讲大纲:演讲老师:张恩民 支持网站:www.php100.com1、算术运算 2、赋值运算 3、比较运算 4、逻辑运算 5、递增递减运算常用PHP运算类型介绍与应用
  • 15. (第三讲) 常用PHP运算类型介绍与应用PHP100视频教程1、算术运算理解为数学运算例: 5 * 6 - 12 2*(28+1) 注:算术运算遵循数学运算规则 从左到右,先算乘除后算加减,遇到括号先算括号内
  • 16. (第三讲) 常用PHP运算类型介绍与应用PHP100视频教程2、赋值运算把一个值写入一个变量例: $a=1; $a+=2; $a*=3; 注:把右边的值赋予左的变量。
  • 17. (第三讲) 常用PHP运算类型介绍与应用PHP100视频教程3、比较运算用来确定两个数之间的关系例: 1==2 3!=2 5<3 "ok"=="ok" 1==='1' 注:比较运算得到的值为布尔值
  • 18. (第三讲) 常用PHP运算类型介绍与应用PHP100视频教程4、逻辑运算先将比较的两边转换成布尔类型,再执行他们的关系例: 1 && 1 0 && 1 1 || 1 1 || 0 注:逻辑运算得到的值为布尔值
  • 19. (第三讲) 常用PHP运算类型介绍与应用PHP100视频教程5、递增递减运算只操作变量的一种运算例: $a++ ++$a $a-- --$a 注:逻辑运算得到的值为布尔值
  • 20. PHP100视频教程还有什么疑问可以到www.php100.com 提出 也可以以发送邮件到 haowubai@hotmail.com (msn)感谢收看本次教程! 本次演讲老师:张恩民 (第三讲) 常用PHP运算类型介绍与应用
  • 21. (第四讲) PHP条件语句的介绍与应用PHP100视频教程本讲大纲:演讲老师:张恩民 支持网站:www.php100.com1、if 条件语句 2、switch 条件语句
  • 22. (第四讲) PHP条件语句的介绍与应用PHP100视频教程1、if 条件语句 程序中最常见的,大部分语言中都存在的一种条件语句,在开发中起着至关 重要的作用,格式如下:if(expr) echo TRUE else echo FALSEif(expr) { echo TRUE }else{ echo FALSE }if(expr) { echo TRUE } elseif(expr) { echo CON }else{ echo FALSE }if …else…if …elseif…
  • 23. (第四讲) PHP条件语句的介绍与应用PHP100视频教程1、switch 条件语句 在多个条件当中使用Switch 更加精巧,格式如下:switch ($i) { case 0: echo "输出 0"; break; case 1: echo "输出 1"; break; case 2: echo "输出 2"; break; }if ($i == 0) { echo "输出 0"; } elseif ($i == 1) { echo "输出 1"; } elseif ($i == 2) { echo "输出 2"; }相等
  • 24. PHP100视频教程还有什么疑问可以到www.php100.com 提出 也可以以发送邮件到 haowubai@hotmail.com (msn)感谢收看本次教程! 本次演讲老师:张恩民 QQ群号:1352110 (第四讲) PHP条件语句的介绍与应用
  • 25. (第五讲) PHP循环语句的介绍与应用PHP100视频教程本讲大纲:演讲老师:张恩民 支持网站:www.php100.com1、break n 循环控制语句 2、do…while 循环语句 3、for 循环语句
  • 26. (第五讲) PHP循环语句的介绍与应用PHP100视频教程1、break n 循环控制语句也可以理解为循环中断语句,跳出循环语句break; break n ;跳出一层循环跳出N条循环
  • 27. (第五讲) PHP循环语句的介绍与应用PHP100视频教程2、do…while 循环语句do{ …… } while(expr)while(expr){ …… }先执行一次循环再判断条件先判断条件执再行一次循环
  • 28. (第五讲) PHP循环语句的介绍与应用PHP100视频教程3、for 循环语句for 循环是 PHP 中最复杂的循环结构。它的行为和 C 语言的相似。 for (expr1; expr2; expr3){ ……} for ($i = 1; $i <= 10; $i++) { echo $i; }无条件执行比较运算循环条件
  • 29. PHP100视频教程还有什么疑问可以到www.php100.com 提出 也可以以发送邮件到 haowubai@hotmail.com (msn)感谢收看本次教程! 本次演讲老师:张恩民 QQ群号:1352110 (第五讲) PHP循环语句的介绍与应用
  • 30. (第六讲) PHP数组的创建修改使用PHP100视频教程本讲大纲:演讲老师:张恩民 支持网站:www.php100.com1、创建和修改数组 / 多维数组 2、数组与数组的函数 3、使用foreach 遍历数组
  • 31. (第六讲) PHP数组的创建修改使用PHP100视频教程1、创建 和 修改 数组PHP中的数组是一个关键字或值的集合 (值可以是任何一种类型,包括另一个数组)例子: $arr = array (3,5,7,9,6); $arr = array ("id"=>2,"title"=>3);PHP中使用array来创建一个数组: array( key=>value , key=>value …… )
  • 32. (第六讲) PHP数组的创建修改使用PHP100视频教程1、创建 和 修改 数组用方括号的语法来修改数组 : $arr[] = value$arr = array("a" => "视频", "b"=>"教程", "c" => "六"); $arr['a'] = "PHP100"; $arr['c'] = "第六讲";
  • 33. (第六讲) PHP数组的创建修改使用PHP100视频教程2、数组与数组的函数使用 count 函数统计数组条数count ( $arr );is_array ( $arr );使用 is_array函数判断数组另一种创建数组的函数explodeexplode ( "key" , value);
  • 34. (第六讲) PHP数组的创建修改使用PHP100视频教程3、使用foreach 遍历数组遍历数组很多种方法,可以使用 For循环,while循环,最巧妙的 一种遍历数组foreach给我们带来了跟多方便foreach ( $arr as $key => $value ){ …… }
  • 35. PHP100视频教程还有什么疑问可以到www.php100.com 提出 也可以以发送邮件到 haowubai@hotmail.com (msn)感谢收看本次教程! 本次演讲老师:张恩民 QQ群号:1352110 (第六讲) PHP数组的创建修改使用
  • 36. (第七讲) PHP函数和自定义函数PHP100视频教程本讲大纲:演讲老师:张恩民 支持网站:www.php100.com1、PHP函数介绍 2、PHP如何自定义函数 3、使用自定义函数实例操作
  • 37. (第七讲) PHP函数和自定义函数PHP100视频教程1、PHP函数介绍PHP函数分为:系统内部函数 和 自定义函数 函数就是为了解决一些常见问题实现制作好的 “模”func(val1,val2,…);格式date("Y-m-d")md5("php100")函数的优越性: 控制程序设计的复杂性 提高软件的可靠性 提高软件的开发效率 提高软件的可维护性 提高程序的重用性例子
  • 38. (第七讲) PHP函数和自定义函数PHP100视频教程2、PHP如何自定义函数使用 Function 来自定义一个函数: Function func_name($val){ …… }格式函数的命名跟自定义变量一样,只能使用 _, A~Z, a~z一个自定义函数中的变量是局部的,函数外不生效使用global全局变量的时候,在函数外才可使用变量(不建议)为了放置全局变量的混乱可以使用 unset($var)删除一个变量
  • 39. (第七讲) PHP函数和自定义函数PHP100视频教程3、使用自定义函数实例操作(1)使用return 函数返回函数内部值 (2)自定义函数值的接收和选择性接收 (3)function_exists() 判断函数是否存在 (4)引用返回值 使用&符号
  • 40. PHP100视频教程还有什么疑问可以到www.php100.com 提出 也可以以发送邮件到 haowubai@hotmail.com (msn)感谢收看本次教程! 本次演讲老师:张恩民 QQ群号:1352110 (第七讲) PHP函数和自定义函数
  • 41. (第八讲) Mysql 简介和创建新的数据库PHP100视频教程本讲大纲:演讲老师:张恩民 支持网站:www.php100.com1、MYSQL简介与概要 2、访问MYSQL的几种途径 3、介绍数据库中常用字段类型 4、创建一个简单的数据库 (并学习5个数据库操作命令)
  • 42. (第八讲) Mysql 简介和创建新的数据库PHP100视频教程1、MYSQL简介与概要MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司,现在已经 被Sun公司收购,支持FreeBSD、Linux、MAC、Windows等多种操作系统 与其他的大型数据库例如Oracle、DB2、SQL Server等相比功能稍弱一些1、可以处理拥有上千万条记录的大型数据 2、支持常见的SQL语句规范 3、可移植行高,安装简单小巧 4、良好的运行效率,有丰富信息的网络支持 5、调试、管理,优化简单(相对其他大型数据库)题外话:Postgresql 发展势头很猛~
  • 43. (第八讲) Mysql 简介和创建新的数据库PHP100视频教程2、访问MYSQL的几种途径知识点:MYSQL默认使用的是3306端口1、使用工具MYSQL官方的工具访问:MySQL Administrator tool 2、使用第三方工具访问:mysqlexec 、 mysql连接器 3、使用WEB方式访问:phpMyAdmin(最常见) 比较: 使用客户端工具操作效率高,安全性高 使用WEB方式简单方便,不受限制
  • 44. (第八讲) Mysql 简介和创建新的数据库PHP100视频教程3、介绍数据库中常用字段类型整数型:TINYINT,SMALLINT,INT,BIGINT 小数型:FLOAT,DOUBLE,DECIMAL(M,D) 字符型:CHAR,VARCHAR 日期型:DATETIME ,DATE,TIMESTAMP 备注型:TINYTEXT ,TEXT ,LONGTEXT
  • 45. (第八讲) Mysql 简介和创建新的数据库PHP100视频教程4、创建一个简单的数据库CREATE TABLE `test` ( `id` int(10) NOT NULL auto_increment, `uid` varchar(10) NOT NULL default '0', `regdate` date NOT NULL, `remark` text NULL, PRIMARY KEY (`id`) )创建一个数据库命令:CREATE TABLE修改一个字段名称:RENAME TABLE `原字段` TO `新字段` ;删除一个数据库命令:DROP TABLE删除一个字段: ALTER TABLE `表` DROP `原字段`插入一个字段: ALTER TABLE `表` ADD `新字段` … AFTER `原字段`
  • 46. PHP100视频教程还有什么疑问可以到www.php100.com 提出 也可以以发送邮件到 Master@php100.com感谢收看本次教程! 本次演讲老师:张恩民 QQ群号:1352110 (第八讲) Mysql 简介和创建新的数据库
  • 47. (第九讲) 数据库中的常用SQL语句PHP100视频教程本讲大纲:演讲老师:张恩民 支持网站:www.php100.com1、SELECT 查询语句和条件语句 2、排序,分组,指针查询,计算 3、Insert 插入语句 4、Update 更新语句 5、Delete 删除语句
  • 48. (第九讲) 数据库中的常用SQL语句PHP100视频教程练习表
  • 49. (第九讲) 数据库中的常用SQL语句PHP100视频教程1、SELECT 查询语句和条件语句SELECT 查询字段 FROM 表名 WHERE 条件 查询字段:可以使用通配符* 、字段名、字段别名表名: 数据库.表名 ,表名常用条件: = 等于 、<>不等于、in 包含 、 not in 不包含、 like 匹配 BETWEEN 在范围 、 not BETWEEN 不在范围 < 、>条件运算: and 、 or 、 ( )
  • 50. (第九讲) 数据库中的常用SQL语句PHP100视频教程2、排序,分组,指针查询,计算分组语句:group by 字段 排序语句:order by 字段,字段 ASC / DESC 指针查询:limit 初始值,结束值 计算: COUNT(*) 统计函数 MAX(*) 最大值函数 MIN (*) 最小值函数 AVG(*) 平均值函数 SUM(*) 累计值函数(∑) 语句最后语句最后 limit之前语句最后 order之前
  • 51. (第九讲) 数据库中的常用SQL语句PHP100视频教程3、Insert 插入语句insert into 表名 (字段…,…) values(值…,…)insert into 表名 values(值…,…)插入时须考虑清楚字段类型避免插入后出现缺值,乱码现象
  • 52. (第九讲) 数据库中的常用SQL语句PHP100视频教程4、Update 更新语句 UPDATE 表名 SET 字段 = 值 WHERE 条件 limit 可省略常用条件: = 等于 、<>不等于、in 包含 、 not in 不包含、 like 匹配 BETWEEN 在范围 、 not BETWEEN 不在范围条件预算: and 、 or 、 ( )
  • 53. (第九讲) 数据库中的常用SQL语句PHP100视频教程5、Delete 删除语句DELETE FROM 表名 WHERE 条件 limit 可省略常用条件: = 等于 、<>不等于、in 包含 、 not in 不包含、 like 匹配 BETWEEN 在范围 、 not BETWEEN 不在范围条件预算: and 、 or 、 ( )
  • 54. PHP100视频教程还有什么疑问可以到www.php100.com 提出 也可以以发送邮件到 Master@php100.com感谢收看本次教程! 本次演讲老师:张恩民 QQ群号:1352110 (满) 、 3128945(第九讲) 数据库中的常用SQL语句
  • 55. (第十讲) MYSQL在PHP5中的应用PHP100视频教程本讲大纲:演讲老师:张恩民 支持网站:www.php100.com1、PHP与mysql建立链接 2、如何去执行一个SQL语句 3、两种查询函数array / row区别 4、 其他常用Mysql函数介绍
  • 56. (第十讲) MYSQL在PHP5中的应用PHP100视频教程1、PHP与mysql建立链接php.ini 加载mysql组件: extension=php_mysql.dll 前的; 去掉 extension_dir = " " 路径是否正确PHP链接mysql函数mysql_connect("主机", "用户名", "密码")mysql_select_db("打开数据库",连接标识符);mysql_connect: 开启 MySQL 链接 mysql_select_db: 打开一个数据库如果不特别声明连接标识符,则默认为是上一次打开的连接。@ 和 or die 隐藏错误 和 条件显示
  • 57. (第十讲) MYSQL在PHP5中的应用PHP100视频教程2、如何去执行一个SQL语句mysql_query (SQL语句 ,连接标识符); 说明:mysql_query用来根据连接标识符向该数据库服务器的当前数据库发送查询, 如果连接标识符默认,则默认为是上一次打开的连接。 返回值:成功后返回一个结果标识符,失败时返回false。$sql = "SELECT * FROM test"; $result = @ mysql_query($sql, $conn) or die(mysql_error());
  • 58. (第十讲) MYSQL在PHP5中的应用PHP100视频教程格式:mysql_fetch_row(result); 说明:mysql_fetch_row用来查询结果的一行保存至数组,该数组下标从0开始,每一个数组元素对应 一个域。通过循环,可以将查询结果全部获得。 格式:mysql_fetch_array(result); 说明:mysql_fetch_array和mysql_fetch_row功能基本相同,只不过它除了可以用从0开始的偏移量作 索引,还可以用域名作索引。 值返回下一行的所有域值,并将其保存至一个数组中,没有行时返回false。3、两种查询函数array / row区别mysql_query("set names 'GBK'"); 解决中文乱码
  • 59. (第十讲) MYSQL在PHP5中的应用PHP100视频教程4、 其他常用Mysql函数介绍mysql_num_rows 用于计算查询结果中所得行的数目mysql_insert_id 传回最后一次使用 INSERT 指令的 ID。mysql_tablename 取得数据库名称mysql_error 返回错误信息mysql_close 关闭 MySQL 链接
  • 60. PHP100视频教程还有什么疑问可以到www.php100.com 提出 也可以以发送邮件到 Master@php100.com感谢收看本次教程! 本次演讲老师:张恩民 (第十讲) MYSQL在PHP5中的应用
  • 61. (第11讲) 学习制作PHP+MYSQL留言板(上)演讲老师:张恩民 支持网站:www.php100.com1、设计一个完整程序的流程 2、HTML部分表单标签的使用 3、PHP里的页面相互调用 4、PHP接收参数的几种方式实例开发留言板知识点PHP100视频教程
  • 62. (第11讲) 学习制作PHP+MYSQL留言板(上)PHP100视频教程1、设计一个程序的流程设计流程:功能需要程序设计:开始程序初始化条件页面设计数据库设计代码设计调试发布代码操作
  • 63. (第11讲) 学习制作PHP+MYSQL留言板(上)PHP100视频教程2、HTML部分表单标签的使用
    提交的URL提交类型POST/GET类型大小该input名称多文本框名称
  • 64. (第11讲) 学习制作PHP+MYSQL留言板(上)PHP100视频教程3、PHP里的页面相互调用require() 与 require_once() 通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require 所指定引入的文件,如果出现错误是致命的。include() 与 include_once() 可以放在 PHP 程序的任何一个位置,PHP 程序在执行到时,才会先读入 include 所指定引入的文件,如果出现错误将会提示。同一个文件只读取一次同一个文件只读取一次require('con.php') ; include('con.php') ;
  • 65. (第11讲) 学习制作PHP+MYSQL留言板(上)PHP100视频教程4、PHP接收参数的几种方式PHP5在默认的情况下接收参数是需要使用 $_GET['value']; $_POST['value']; 还可以在PHP.ini 文件中的 将register_globals = Off 改register_globals = on 可以直接使用,$value的值不建议 尤其是对新手
  • 66. (第11讲) 学习制作PHP+MYSQL留言板(上)PHP100视频教程实例操作我们的留言板 con.php //数据库配置 add.php //操作文件 list.php //列表文件
  • 67. (第11讲) 学习制作PHP+MYSQL留言板(上)还有什么疑问可以到 www.php100.com 提出 也可以以发送邮件到 Master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民 PHP100视频教程
  • 68. (第12讲) 学习制作PHP+MYSQL留言板(下)演讲老师:张恩民 支持网站:www.php100.com1、提交表单Javascript验证 2、str_replace替换函数 3、htmlspecialchars 格式化html 4、md5加密函数 5、COOKIE 的使用和登陆实例开发留言板知识点PHP100视频教程
  • 69. (第12讲) 学习制作PHP+MYSQL留言板(下)PHP100视频教程1、提交表单Javascript验证
    执行标签执行函数JS自定义函数 {/literal} strip标记中数据的首尾空格和回车. 这样可以保证模板容易理解且不用担心多余的 空格导致问题.{strip} .... {/strip}一般放在HTML代码的开始和结束不建议大家把javascript写在页面上
  • 162. (第29讲) PHP模板引擎Smarty内置函数PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民 PHP100视频教程
  • 163. (第30讲) PHP模板引擎Smarty缓存应用PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标1、Smarty缓存的配置 2、Smarty缓存的使用和清除 3、Smarty局部缓存 4、MYSQL与Smarty的应用
  • 164. (第30讲) PHP模板引擎Smarty缓存应用PHP100视频教程1、Smarty缓存的配置$smarty->cache_dir = "/caches/"; //缓存目录 $smarty->caching = true; //开启缓存,为flase的时侯缓存无效 $smarty->cache_lifetime = 60; //缓存时间2、Smarty缓存的使用和清除$smarty->display('cache.tpl', cache_id); //创建带ID的缓存 $smarty->clear_all_cache(); //清除所有缓存 $smarty->clear_cache('index.htm'); //清除index.tpl的缓存 $smarty->clear_cache('index.htm',cache_id); //清除指定id的缓存
  • 165. (第30讲) PHP模板引擎Smarty缓存应用PHP100视频教程3、Smarty局部缓存insert 函数默认是不缓存的。并且这个属性不能修改。index.htm
    {insert name="get_time"}
    index.php function insert_get_time(){ return date("Y-m-d H:m:s"); }smarty_block 函数功能更加强大,使用方法同上{blockname} 没有缓存的:{$smarty.now} {/blockname}方法前缀
  • 166. (第30讲) PHP模板引擎Smarty缓存应用PHP100视频教程4、MYSQL与Smarty的应用通过连接一个数据库,具体学习MYSQL与Smarty 的应用mysql_classsmarty_classPHPtemplatesbrowser
  • 167. (第30讲) PHP模板引擎Smarty缓存应用PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民 PHP100视频教程
  • 168. (第31讲) PHP在线编辑器fckeditor应用PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标1、什么是在线编辑器 2、fckeditor配置 3、fckeditor的应用 4、fckeditor结合数据库应用
  • 169. (第31讲) PHP在线编辑器fckeditor应用PHP100视频教程传统的文本编辑排版editor的文本编辑排版1、什么是在线编辑器在线排版,方便用户和编辑操作,图片,文字,视频等功能生成对应的 HTM代码的编辑器,fckeditor 是其中一个做的比较好的一类编辑器
  • 170. (第31讲) PHP在线编辑器fckeditor应用PHP100视频教程2、fckeditor配置$sBasePath = $_SERVER['PHP_SELF'] ; $sBasePath = dirname($sBasePath).'/'; $oFCKeditor = new FCKeditor('FCKeditor1') ; $oFCKeditor->BasePath = $sBasePath ;3、fckeditor的应用dirname ,取得路径目录命的函数$oFCKeditor->Create(); 创建一个窗口出来 $oFCKeditor->Value='初始值';提交时,直接使用实例化时的名称 'FCKeditor1'
  • 171. (第31讲) PHP在线编辑器fckeditor应用PHP100视频教程4、fckeditor结合数据库应用
  • 172. (第31讲) PHP在线编辑器fckeditor应用PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民 PHP100视频教程
  • 173. (第32讲) PHP5中Cookie与 Session详解PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标1、Cookie和Session简介与区别 2、Cookie的配置与应用 3、Session的配置与应用 4、用Cookie和Session做登陆
  • 174. (第32讲) PHP5中Cookie与 Session详解PHP100视频教程在非常多时候,我们需要跟踪浏览者在整个网站的活动,对他们身份进行自动或半 自动的识别(也就是平时常说的网站登陆之类的功能),这时候,我们常采用Cookie 与 Session来跟踪和判断。1、Cookie和Session简介与区别Session信息是存放在server端,但session id是存放在client cookie的,当然php 的session存放方法是多样化的,这样就算禁用cookie一样可以跟踪 Cookie是完全保持在客户端的如:IE firefox 当客户端禁止cookie时将不能再使用区别
  • 175. (第32讲) PHP5中Cookie与 Session详解PHP100视频教程2、Cookie的配置与应用Setcookie(string name, string value, int expire,string path, string domain, int secure); 其中name是cookie变量名称标识,你在php中将能象使用普通变量名相同来用他引用cookie变量。value是cookie变量的初始值,expire 表示该cookie变量的有效时间;path 为该cookie变量的相关路径;domain 表示cookie变量的网站;secure 则需在 https 的安全传输时才有效。 例:SetCookie("Cookie", "cookievalue",time()+3600, "/forum", ".php100.com", 1);毫秒time()+3600=1小时保存路径保存的域HTTPS名称,必须值,必须
  • 176. (第32讲) PHP5中Cookie与 Session详解PHP100视频教程2、Cookie的配置与应用接收和处理Cookie   PHP对Cookie的接收和处理的支持非常好,是完全自动的,跟FORM变量的原则一样,特别简单。 比如设置一个名为 MyCookier的Cookie,PHP会自动从WEB服务器接收的HTTP头里把它分析出来,并形成一个与普通变量一样的变量,名为$ myCookie,这个变量的值就是Cookie的值。数组同样适用。另外一个办法是引用PHP的全局变量$HTTP_COOKIE_VARS数组。 分别举例如下:(假设这些都在以前的页面里设置过了,并且仍然有效) echo $MyCookie; echo $CookieArray[0]; echo $_COOKIE["MyCookie"]; echo $HTTP_COOKIE_VARS["MyCookie"];
  • 177. (第32讲) PHP5中Cookie与 Session详解PHP100视频教程2、Cookie的配置与应用删除Cookie 要删除一个已经存在的Cookie,有两个办法: 1、SetCookie("Cookie", ""); 2、SetCookie("Cookie", "value" , time()-1 / time() ); 使用Cookie的限制 1、必须在HTML文件的内容输出之前设置; 2、不同的浏览器对Cookie的处理不一致,且有时会出现错误的结果。 3、限制是在客户端的。一个浏览器能创建的Cookie数量最多为30个,并且每个不能超过4KB,每个WEB站点能设置的Cookie总数不能超过20个。
  • 178. (第32讲) PHP5中Cookie与 Session详解PHP100视频教程3、Session的配置与应用session_start(); //初始化session.需在文件头部 $_SESSION[name]=value; //配置Seeeion echo $_SESSION[name]; //使用session isset($_SESSION[name]); // 判断 unset($_SESSION[name]); //删除 session_destroy(); //消耗所有session注意:session_register(),session_unregister,session_is_registered在php5下不再使用
  • 179. (第32讲) PHP5中Cookie与 Session详解PHP100视频教程4、用Cookie和Session做登陆
  • 180. (第32讲) PHP5中Cookie与 Session详解PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民 PHP100视频教程
  • 181. (第33讲) PHP5中图片验证码的制作(上)PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标1、启用PHP中GD库 2、部分GD库函数的介绍 3、学习:随机函数,十六进制函数 4、GD+SESSION制作PHP验证码
  • 182. (第33讲) PHP5中图片验证码的制作(上)PHP100视频教程1、启用PHP中GD库;extension=php_gd2.dll通过PHP.ini 启用GD库去掉通过WAMPserver 启用GD库GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。 在网站上GD库通常用来生成缩略图或者用来对图片加水印或者对网站数据生成报表。
  • 183. (第33讲) PHP5中图片验证码的制作(上)PHP100视频教程2、部分GD库函数的介绍1、 imagecreatetruecolor 新建一个真彩色图像imagecreatetruecolor ( int x_size, int y_size ) // x就是宽 ,y就是高2、imagecolorallocate 为一幅图像分配颜色(调色板)imagecolorallocate ( resource image, int red, int green, int blue )三原色3、imagestring 绘图函数imagestring ( resource image, font, int x, int y, 内容 , 颜色 )
  • 184. (第33讲) PHP5中图片验证码的制作(上)PHP100视频教程3、学习:随机函数,十六进制函数1 、rand 随机函数 rand ( [int min, int max] ) rand (1,4) 随机 1-4 之间的数2、dechex 十进制转换为十六进制dechex ( 十进制数 ) 十六进制 1 ~ f
  • 185. (第33讲) PHP5中图片验证码的制作(上)PHP100视频教程4、GD+SESSION制作PHP验证码
  • 186. (第33讲) PHP5中图片验证码的制作(上)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民 PHP100视频教程
  • 187. (第34讲) PHP5中图片验证码的制作(下)PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标1、image与header输出的介绍 2、imageline 与 imagesetpixel 函数 3、imagettftext函数调用字体写入文字 4、PHP验证码插入中文的方法
  • 188. (第34讲) PHP5中图片验证码的制作(下)PHP100视频教程1、image与header输出的介绍PHP的HEADER是定义头的动作,新PHP5中支持三种类型: Content-Type: xxxx/yyyy Location: xxxx:yyyy/zzzz Status: nnn xxxxxx header(*)内容文件的类型 如:image/gif image/jpeg image/png http://www.php100.com/php_view_481.html 完整的类型列表GD库中有对应的image类型imagejpeg(*) imagegif(*) imagepng(*) ……
  • 189. (第34讲) PHP5中图片验证码的制作(下)PHP100视频教程2、imageline 与 imagesetpixel 函数imageline 画线函数 imagesetpixel ( resource image, int x, int y, int color )imagesetpixel 画点函数imageline ( resource image, int x1, int y1, int x2, int y2, int color )3、imagettftext函数调用字体写入文字 imagettftext ( resource image, float size, float angle, int x, int y, int color, string fontfile, string text )imagettftext 带字体的写入函数
  • 190. (第34讲) PHP5中图片验证码的制作(下)PHP100视频教程4、PHP验证码插入中文的方法iconv("gb2312","UTF-8","新年快乐!"); //首先要将文字转换成UTF8格式然后使用imagettftext 调用一种字体,再将转换好的UTF8格式的中文 写入图片中!
  • 191. (第34讲) PHP5中图片验证码的制作(下)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民 PHP100视频教程
  • 192. (第35讲) PHP5文字图片混合水印与缩略图PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标1、介绍PHP水印原理和流程 2、ImageCreateFrom* 图片载入函数 3、imagecopy 图片合并函数 4、ImageCopyResized图片剪切函数
  • 193. (第35讲) PHP5文字图片混合水印与缩略图PHP100视频教程1、介绍PHP水印原理和流程原始图片上传到dir载入到PHPPHP初始化水印处理生成新图水印图片水印文字大图小图缩略图
  • 194. (第35讲) PHP5文字图片混合水印与缩略图PHP100视频教程2、ImageCreateFrom* 图片载入函数ImageCreateFrom* 载入PHP是一个将图片编码转成PHP可识别的编码的过程ImageCreateFrom* imagecreatefromgif imagecreatefromjpeg imagecreatefrompng imagecreatefromwbmp imagecreatefromstring通过一串图片编码imagecreatefromgif('php100.gif');使用格式3、imagecopy 图片合并函数imagecopy ( Dimg, Simg, int x, int y, int src_x, int src_y, int src_w, int src_h )
  • 195. (第35讲) PHP5文字图片混合水印与缩略图PHP100视频教程4、ImageCopyResized图片剪切函数imagecopyresized ( resource dst_image, resource src_image, int dst_x, int dst_y, int src_x, int src_y, int dst_w, int dst_h, int src_w, int src_h )在使用剪切图之前我们需要先建立一个真彩图,也就是方便内存来存储
  • 196. (第35讲) PHP5文字图片混合水印与缩略图PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民 PHP100视频教程
  • 197. (第36讲) PHP中正则表达式学习及应用(一)PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标1、正则表达式的介绍和作用 2、PHP中两个常用的正则函数 3、正则表达式中包括的元素 4、正则表达式中的“原子”
  • 198. (第36讲) PHP中正则表达式学习及应用(一)PHP100视频教程1、正则表达式的介绍和作用在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串 的需要。正则表达式就是用于描述这些规则的语法。什么是正则表达式例:在判断用户邮件地址格式、手机号码格式或者采集别人网页内容时主要的作用是:分割、匹配、查找、替换注:正则表达式对于一个程序员来讲是至关重要的一个知识点,所以学好正则 是每一个程序员必须具备的。不仅可以帮助我们完成一些通过函数无法实现 的工作,还可以帮助我们减轻很多工作量。
  • 199. (第36讲) PHP中正则表达式学习及应用(一)PHP100视频教程2、PHP中两个常用的正则函数3、正则表达式中包括的元素preg_match ( mode, string subject , array matches )preg_match 正则函数,以perl语言为基础ereg ( mode, string subject , array regs )ereg 正则函数,以POSIX基础 (Unix 、 Script)(1)、原子(普通字符:a-z A-Z 0-9 、原子表、 转义字符) (2)、元字符 (有特殊功能的字符) (3)、模式修正符 (系统内置部分字符 i 、m、S、U…)
  • 200. (第36讲) PHP中正则表达式学习及应用(一)PHP100视频教程4、正则表达式中的“原子”①a-z A-Z _ 0-9 //最常见的字符 ②(abc) (skd) //用圆括号包含起来的单元符合 ③[abcs] [^abd] //用方括号包含的原子表,原子表中的^代表排除或相反内容 ④转义字符 \d 包含所有数字[0-9] \D 除所有数字外[^0-9] \w 包含所有英文字符[a-zA-Z_0-9] \W 除所有英文字符外[^a-zA-Z_0-9] \s 包含空白区域如回车、换行、分页等 [\f\n\r] ……
  • 201. (第36讲) PHP中正则表达式学习及应用(一)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 202. (第37讲) PHP中正则表达式学习及应用(二)PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标正则表达式中的“元字符”
  • 203. (第37讲) PHP中正则表达式学习及应用(二)PHP100视频教程正则表达式元字符* 匹配前一个内容的0次1次或多次 . 匹配内容的0次1次或多次,但不包含回车换行 + 匹配前一个内容的1次或多次 ?匹配前一个内容的0次或1次 | 选择匹配类似PHP中的| (因为这个运算符合是弱类型导致前面最为整体匹配) ^ 匹配字符串首部内容 $ 匹配字符串尾部内容 \b 匹配单词边界,边界可以是空格或者特殊符合 \B 匹配除带单词边界意外内容 {m} 匹配前一个内容的重复次数为M次 {m,} 匹配前一个内容的重复次数大于等于M次 {m,n} 匹配前一个内容的重复次数M次到N次 ( ) 合并整体匹配,并放入内存,可使用\1 \2…依次获取
  • 204. (第37讲) PHP中正则表达式学习及应用(二)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 205. (第38讲) PHP中正则表达式学习及应用(三)PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标正则表达式中的“模式修正符”1、运算顺序 2、模式修正符
  • 206. (第38讲) PHP中正则表达式学习及应用(三)PHP100视频教程1、运算顺序依然遵循从左到→右的运算规则优先级( ) 圆括号因为是内存处理所以最高 * ? + { } 重复匹配内容其次 ^ $ \b 边界处理第三 | 条件处理第四 最后按照运算顺序计算匹配
  • 207. (第38讲) PHP中正则表达式学习及应用(三)PHP100视频教程2、模式修正符模式修正符是为正则表达式增强和补充的一个功能,使用在正则之外/ 正则 / U 模式修正符常用修正符i 正则内容在匹配时候不区分大小写(默认是区分的) m 在匹配首内容或者尾内容时候采用多行识别匹配 S 将转义回车取消是为单行匹配如. 匹配的时候 x 忽略正则中的空白 A 强制从头开始匹配 D 强制$匹配尾部无任何内容 \n U 禁止贪婪匹配 只跟踪到最近的一个匹配符并结束, 常用在采集程序上的正则表达式
  • 208. (第38讲) PHP中正则表达式学习及应用(三)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 209. (第39讲) PHP中正则表达式学习及应用(四)PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标正则表达式在PHP中的应用1、匹配功能 2、替换功能 3、分割功能
  • 210. (第39讲) PHP中正则表达式学习及应用(四)PHP100视频教程1、匹配功能 preg_match_all 全部匹配函数preg_match_all ( string pattern, string subject, array matches [, int flags] )对结果排序使 $matches[0] 为全部模式匹配的数组用途:截取比较详细的内容,采集网页,分析文本
  • 211. (第39讲) PHP中正则表达式学习及应用(四)PHP100视频教程2、替换功能 preg_replace 正则替换函数preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit] )通过正则表达式来替换相关内容,类似之前学过的str_replace字符串替换,但 功能要强于它。提示:1、替换内容可以是一个正则也可以是数组正则 2、替换内容可以通过修正符e来解决替换执行内容用途:替换一些比较复杂的内容上,也可以用于内容的转换上
  • 212. (第39讲) PHP中正则表达式学习及应用(四)PHP100视频教程3、分割功能 preg_split 正则切割preg_split ( string pattern, string subject [, int limit [, int flags]] )通过正则表达式来切割相关内容,类似之前学过的explode切割函数,但explode 只能按照一种方式切割有局限性。用途:太广
  • 213. (第39讲) PHP中正则表达式学习及应用(四)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 214. PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标1、什么是UBB代码 2、UBB代码运行过程 3、介绍几种简单的UBB代码 4、写一个自己的UBB(第40讲) PHP中开发自己的 "UBB代码"
  • 215. PHP100视频教程(第40讲) PHP中开发自己的 "UBB代码"1、什么是UBB代码UBB代码是HTML的一个变种,是Ultimate Bulletin Board (国外一个BBS程序,国内也有不少地方使用这个程序)采用的一种特殊的TAG。UBB代码很简单,虽然功能很少,但基本实现了我们常用的一些功能. 优点: 1、相对HTML安全性高; 2、使用简单,方便记忆; 3、自定义功能强大,扩展性好; 4、有效较少数据库存储代码; 缺点: 1、排版功能弱 2、不允许交叉使用 [url] www.php100.com[/url] [b] PHP100中文站 [/b] [swf] ../img/demo.swf [/swf] ……UBB例子
  • 216. PHP100视频教程(第40讲) PHP中开发自己的 "UBB代码"2、UBB代码运行过程UBBDB解析UBBDB解析输出输出两种使用模式UBB Code解析转换HTML Code
  • 217. PHP100视频教程(第40讲) PHP中开发自己的 "UBB代码"3、介绍几种简单的UBB代码UBB正则HTML[url] [/url] /(\[url\])(.*)(\[\/url\])/i[img] [/img]/(\[img\])(.*)(\[\/img\])/i\\2", $str);例子:
  • 218. PHP100视频教程(第40讲) PHP中开发自己的 "UBB代码"
  • 219. (第40讲) PHP中开发自己的 "UBB代码"PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 220. PHP100视频教程演讲老师:张恩民 支持网站:www.php100.com学习目标1、SQL语句中的模糊查找 2、多个关键字搜索的原理和技巧 3、替换关键字高亮显示 (第41讲) PHP站内搜索:多关键字、加亮显示
  • 221. PHP100视频教程(第41讲) PHP站内搜索:多关键字、加亮显示1、SQL语句中的模糊查找LIKE条件一般用在指定搜索某字段的时候, 通过"% _" 通配符的作用实现模糊查找功能,通配符可以在前面也可以在后面或前后都有。 搜索以PHP100开头: SELECT * FROM teble WHERE title LIKE 'PHP100%' 搜索以PHP100结束: SELECT * FROM teble WHERE title LIKE '%PHP100' 搜索包含PHP100: SELECT * FROM teble WHERE title LIKE '%PHP100%' 注释:%表示0个或多个字符构成的字符串 _表示单个字符
  • 222. PHP100视频教程(第41讲) PHP站内搜索:多关键字、加亮显示2、多个关键字搜索的原理和技巧提交表单PHP接收执行SQL输出结果提交一个 或者多个关键字 使用空格或者+号 区分关键字拆分出多个关键字 放在数组中通过复合模糊查找 获得结果$key=explode(' ',$_GET[key]);subject like '%$key[0]%'3、替换关键字高亮显示正则替换关键字效果输出结果
  • 223. PHP100视频教程(第41讲) PHP站内搜索:多关键字、加亮显示
  • 224. (第41讲) PHP站内搜索:多关键字、加亮显示PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 225. PHP100视频教程演讲老师:张恩民 官方网站:www.php100.com学习目标1、PHP中发送邮件的方式 2、mail函数的使用 3、socket方式发送原理 4、学会使用一个发送邮件的类(第42讲) PHP通过mail()或Socket发从邮件
  • 226. PHP100视频教程(第42讲) PHP通过mail()或Socket发从邮件1、PHP中发送邮件的方式PHP发送邮件是“非常的简单” 因为他提供了mail()函数直接发送,但这也继 register globals 成为了对初学者的第二大杀手。(1)通过mail()函数发送邮件mail()需要类似sendmail这样的组件支持配置PHP.ini 邮件信息(2)通过socket通讯,使用SMTP传输socket连接SMTP通讯获取通讯消息发送
  • 227. PHP100视频教程(第42讲) PHP通过mail()或Socket发从邮件2、mail函数的使用mail() 函数允许您从脚本中直接发送电子邮件。 如果邮件的投递被成功地接收,则返回 true,否则返回 false。mail(to,subject,message,headers,parameters)to 必需。规定邮件的接收者。 subject 必需。规定邮件的主题。该参数不能包含任何换行字符。 message 必需。规定要发送的消息。 headers 可选。规定额外的报头,比如 From, Cc 以及 Bcc。 parameters 可选。规定 sendmail 程序的额外参数。 Sendmail 的支持PHP.ini 的配置
  • 228. PHP100视频教程(第42讲) PHP通过mail()或Socket发从邮件3、socket方式发送原理使用fsockopen函数打开一个Internet连接fsockopen(string hostname, int port, int [errno], string [errstr], int [timeout]); 这里由于要使用SMTP协议,所以端口号为25。在打开连接成功后,会返回一 个socket句柄,使用它就可以象使用文件句柄一样的。可使用的操作有fputs(), fgets(),feof(),fclose() 220 服务就绪(在socket连接成功时,会返回此信息) 221 正在处理 250 请求邮件动作正确, 354 开始发送数据,结束以 . 500 语法错误,命令不能识别 550 命令不能执行,邮箱无效 552 中断处理:用户超出文件空间 了解原理即可
  • 229. (第42讲) PHP通过mail()或Socket发从邮件PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 230. PHP100视频教程演讲老师:张恩民 官方网站:www.php100.com学习目标1、什么是MVC 2、为什么要使用 MVC 3、认识一个MVC框架ThinkPHP 4、如何搭建一个ThinkPHP 5、ThinkPHP的简单使用(第43讲) PHP中MVC学习之ThinkPHP(上)
  • 231. PHP100视频教程(第43讲) PHP中MVC学习之ThinkPHP(上)1、什么是MVCMVC本来是存在于Desktop程序中的,M是指数据模型,V是指用户界面,C则是控制器。使用MVC的目的是将M和V的实现代码分离MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。
  • 232. PHP100视频教程(第43讲) PHP中MVC学习之ThinkPHP(上)2、为什么要使用 MVC首先,最重要的一点是多个视图能共享一个模型,现在需要用越来越多的方式来访问你的应用程序。由于模型返回的数据没有进行格式化,所以同样的构件能被不同界面使用。再次,开发周期缩短、方便维护和管理降低开发成本和工作量。任何一个事物也会有缺点,我们来看一下:MVC的缺点是由于它没有明确的定义,所以完全理解MVC并不是很容易。使用MVC 需要精心的计划,由于它的内部原理比较复杂,所以需要花费一些时间去思考。MVC并不适合小型甚至中等规模的应用程序,花费大量时间将MVC应用到规模并不 是很大的应用程序通常会得不偿失。
  • 233. PHP100视频教程(第43讲) PHP中MVC学习之ThinkPHP(上)3、认识一个MVC框架ThinkPHPThinkPHP是一个快速、简单的面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,并且永久免费使用,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。使用ThinkPHP,你可以更方便和快捷的开发和部署WEB应用简单易用的MVC模式 独创的核心编译和项目编译机制 内置 XML模板引擎,支持标签库 富模型支持 目录结构自动创建 分布式数据库支持 多数据库连接和切换支持 CURD和操作高度自动化支持 特点
  • 234. PHP100视频教程(第43讲) PHP中MVC学习之ThinkPHP(上)4、如何搭建一个ThinkPHP下载ThinkPHP框架包,直接引用目录中的 ThinkPHP.php 文件即可define('THINK_PATH', 'ThinkPHP/'); define('APP_NAME', 'php100'); define('APP_PATH', '.'); require(THINK_PATH."/ThinkPHP.php"); $App = new App(); //实例化操作系统会自动创建开发目录 $App->run();
  • 235. PHP100视频教程(第43讲) PHP中MVC学习之ThinkPHP(上)5、ThinkPHP的简单使用ThinkPHP基本结构
  • 236. PHP100视频教程(第43讲) PHP中MVC学习之ThinkPHP(上)5、ThinkPHP的简单使用(1)ThinkPHP如何创建一个控制器 只需在Lib\Action目录下创建一个对应的控制器的类格式 name.class.php (2)ThinkPHP URL路由模的解析 ThinkPHP采用单一入口方式, 提供了一个URL路由模式解析 /
  • 237. (第43讲) PHP中MVC学习之ThinkPHP(上)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 238. PHP100视频教程演讲老师:张恩民 官方网站:www.php100.com学习目标1、ThinkPHP配置文件 2、ThinkPHP数据库操作 3、ThinkPHP模板的使用 4、实例操作(第44讲) PHP中MVC学习之ThinkPHP(下)
  • 239. PHP100视频教程(第44讲) PHP中MVC学习之ThinkPHP(下)1、ThinkPHP配置文件\ThinkPHP\Common\convention.php /* 模块和操作设置 */ 'DEFAULT_MODULE' => 'Index', // 默认模块名称 'DEFAULT_ACTION' => 'index', // 默认操作名称/* 错误设置 */ 'DEBUG_MODE' =>false, // 调试模式默认关闭// 惯例配置定义 变量名大小写任意,都会统一转换成小写 // 如果要覆盖惯例配置的值,请在项目配置文件中设置 // 所有配置参数都可以在生效前动态改变
  • 240. PHP100视频教程(第44讲) PHP中MVC学习之ThinkPHP(下)2、ThinkPHP数据库操作操作数据库前我们需要在配置文件中加入数据库连接 'DB_TYPE'=>'mysql', 'DB_HOST'=>'localhost', 'DB_NAME'=>'think_Php100', 'DB_USER'=>'root', 'DB_PWD'=>'', 'DB_PORT'=>'3306', 'DB_PREFIX'=>'think_',接下来,我们在Lib\Model目录下面创建一个BlogModel.class.php 文件,内容如下: class BlogModel extends Model{ }建立一个空的模块就可以了 因为我们继承了Model假设我们建立了一个think_blog表
  • 241. PHP100视频教程(第44讲) PHP中MVC学习之ThinkPHP(下)2、ThinkPHP数据库操作定义了模型类,我们还需要修改Action类的操作方法,来获取数据并显示出来。 我们把原来默认执行的index操作方法修改成下面的代码: class IndexAction extends Action{ public function index(){ $Blog = new BlogModel(); $list = $Blog->findAll(); dump($list); } }
  • 242. PHP100视频教程(第44讲) PHP中MVC学习之ThinkPHP(下)2、ThinkPHP数据库操作
  • 243. PHP100视频教程(第44讲) PHP中MVC学习之ThinkPHP(下)3、ThinkPHP模板的使用到目前为止,我们只是使用了控制器和模型,还没有接触视图,下面来给上面的应用添加视图模板。 首先我们修改下Action的index操作方法,添加模板赋值和渲染模板操作。 class IndexAction extends Action{ public function index(){ $Blog = new BlogModel(); $list = $Blog->findAll(); $this->assign('title', 'ThinkPHP示例'); $this->assign('list',$list); $this->display(); } } Smarty风格{$title} [ {$vo.title} ] {$vo.content}
  • 244. (第44讲) PHP中MVC学习之ThinkPHP(下)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 245. PHP100视频教程演讲老师:张恩民 官方网站:www.php100.com学习目标1、PHPMyAdmin 简单配置和安装 2、PHPMyAdmin 数据库的操作(十项功能)(第46讲) PHPMyAdmin 备份,导入,创建,修改,删除教程
  • 246. PHP100视频教程(第46讲) PHPMyAdmin 备份,导入,创建,修改,删除教程1、PHPMyAdmin 简单配置和安装(1) 下载PHPMyAdmin压缩包,直接解压到网站或开发目录即可(2) 修改PHPMyAdmin配置文件首先找到PHPMyAdmin文件夹下config.inc.phpWamp中自带可省$cfg['PmaAbsoluteUri'] = ''; …… $cfg['Servers'][$i]['host'] = 'localhost'; // MySQL hostname or IP address $cfg['Servers'][$i]['port'] = ''; // MySQL port - leave blank for default port …… $cfg['Servers'][$i]['user'] = 'root'; // MySQL user $cfg['Servers'][$i]['password'] = ''; // MySQL password (only needed修改如下
  • 247. PHP100视频教程(第46讲) PHPMyAdmin 备份,导入,创建,修改,删除教程2、PHPMyAdmin 数据库的操作⒈ 创建一个mysql数据库 ⒉ 创建一个mysql数据库表并添加字段 ⒊ 原表中插入新字段 ⒋ 修改字段类型,功能,名称 ⒌ 修改表类型名称编码 ⒍ 修改数据库基本信息和配置 ⒎ PHPMyAdmin 一些常有选项卡的使用 ⒏ 导出几种类型的表或数据库 ⒐ 导入表或数据库 ⒑ 数据简单优化和一些其他操作如何?
  • 248. (第46讲) PHPMyAdmin 备份,导入,创建,修改,删除教程PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 249. PHP100视频教程演讲老师:张恩民 官方网站:www.php100.com学习目标1、定义 header()头部输出格式 2、输出编码和支持的格式(第47讲) PHP输出CSV和EXCEL两种简单的方法
  • 250. PHP100视频教程(第47讲) PHP输出CSV和EXCEL两种简单的方法1、定义 header()头部输出格式header("Content-type:application/vnd.ms-excel"); header("Content-Disposition:filename=php100.xls");定义输出的文件类型定义输出的文件名
  • 251. PHP100视频教程(第47讲) PHP输出CSV和EXCEL两种简单的方法2、输出编码和支持的格式(1)支持普通格式的CSV 文本规范,以空格和换行来识别常用: \t \n 填充空白和换行(2)支持简单的HTML代码和表格规范常用:table 规范 ,表格合并规范,Font标签规范
    PHP100财务统计
    t10t11t12
    t20t21t22
    均支持EXCEL 运算语法如: =A1+B1
  • 252. (第47讲) PHP输出CSV和EXCEL两种简单的方法PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 253. PHP100视频教程演讲老师:张恩民 官方网站:www.php100.com学习目标1、ajax是什么及其工作原理 2、创建XMLHttpRequest对象 3、XMLHttpRequest对象相关方法(第48讲) Ajax+PHP快速上手及应用(一)
  • 254. PHP100视频教程(第48讲) Ajax+PHP快速上手及应用(一)1、ajax是什么及其工作原理Ajax 由 HTML、JavaScript™ 技术、DHTML 和 DOM 组成,这一杰出的 方法可以将笨拙的 Web 界面转化成交互性的 Ajax 应用程序。HTML页面JS脚本PHP文件触发脚本执行反应
  • 255. PHP100视频教程(第48讲) Ajax+PHP快速上手及应用(一)2、创建XMLHttpRequest对象对于Ajax,最核心的一个对象是XMLHttpRequest,所有的Ajax操作都离不开对这 个对象的操作 xmlHttp = new XMLHttpRequest(); 首先我们来了解怎么在javascript中创建这个对象: JS代码:这对于规范的Js支持的浏览器来讲是没错的 恰恰相反IE却就不支持,所以没办法我们只能 做个判断再创建一个IE支持的xmlHttp = new ActiveXObject('Microsoft.XMLHTTP');
  • 256. PHP100视频教程(第48讲) Ajax+PHP快速上手及应用(一)3、XMLHttpRequest对象相关方法XMLHttpRequest.open(传递方式,地址,是否异步请求)XMLHttpRequest.onreadystatechangeXMLHttpRequest.responseText打开请求准备就绪执行获取执行结果
  • 257. (第48讲) Ajax+PHP快速上手及应用(一)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 258. PHP100视频教程演讲老师:张恩民 官方网站:www.php100.com学习目标1、解答48讲Ajxa常见问题 2、方法XHR.readyState五种状态 3、方法XHR.status常见的几种状态 4、实例操作并学习一个PHP等待函数Sleep(第49讲) Ajax+PHP打造等待进度条效果(二)
  • 259. PHP100视频教程(第49讲) Ajax+PHP打造等待进度条效果(二)1、解答48讲Ajxa常见问题 (1) js脚本缓存问题 答:这个问题是大家遇到最常见问题之一,因为修改了js内容调试的时候 并不能显示新写代码的结果,是因为js为了加速页面执行,当前页面会使用缓存保持 当前调用的相同连接。为了开发时调试方便可以在连接地址的后面增加一个随机函数。 如原地址:for.php 增加随机后 for.php?1293874 (2) 本地调试js脚本不起作用 答:因为使用ajxa传递参数的时候需要head支持,所以我们只有在站点下才可以 成功,比如我们放在Apache下面或者IIS下面进行调试。 (3) 调试代码查找错误困难 答:这是js调试存在已久的问题,简单点我们可以使用ie默认提示的错误框,还有就 是我们可以使用DW CS4提供的纠正错误,或者通过专业的插件如:firbug 等
  • 260. PHP100视频教程(第49讲) Ajax+PHP打造等待进度条效果(二)2、方法XHR.readyState五种状态0:请求未初始化,还没有调用 open()。 1:请求已经建立,但是还没有发送,还没有调用 send()。 2:请求已发送,正在处理中(通常现在可以从响应中获取内容头)。 3:请求在处理中;通常响应中已有部分数据可用了,没有全部完成。 4:响应已完成;您可以获取并使用服务器的响应了。XHR.readyState == 状态(0,1,2,3,4)
  • 261. PHP100视频教程(第49讲) Ajax+PHP打造等待进度条效果(二)3 、方法XHR.status常见的几种状态100——客户必须继续发出请求 101——客户要求服务器根据请求转换HTTP协议版本 200——成功 201——提示知道新文件的URL 300——请求的资源可在多处得到 301——删除请求数据 404——没有发现文件、查询或URl 500——服务器产生内部错误 XHR.status == 200,300,404 等
  • 262. PHP100视频教程(第49讲) Ajax+PHP打造等待进度条效果(二)4、实例操作并学习一个PHP等待函数SleepSleep函数,可以理解为等待函数或者睡眠函数,执行到该函数根据设置的时间 再继续往下执行sleep(秒)Let's GO
  • 263. (第49讲) Ajax+PHP打造等待进度条效果(二)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 264. PHP100视频教程演讲老师:张恩民 官方网站:www.php100.com学习目标1、Ajax技术实现用户名检查原理 2、学习HTML的几种触发 3、如何获取表单中的数据内容(第50讲) Ajax+PHP检查用户名或邮件(三)
  • 265. PHP100视频教程(第50讲) Ajax+PHP检查用户名或邮件(三)1、Ajax技术实现用户名检查原理填入用户名触发控件获得填写内容ajax传递查询数据库返回结果DOM反应到页面学习重点: 1、页面触发的几种类型 2、获取表单内容 3、数据库查询技巧
  • 266. PHP100视频教程(第50讲) Ajax+PHP检查用户名或邮件(三)2、学习HTML的几种触发onblur 事件会在对象失去焦点时发生。 onchange 事件会在域的内容改变时发生。 onclick 事件会在对象被点击时发生。 onfocus 事件在对象获得焦点时发生。 onkeydown 事件会在用户按下一个键盘按键时发生。 onkeypress 事件会在键盘按键被按下并释放一个键时发生。 onkeyup 事件会在键盘按键被松开时发生。 onmousedown 事件会在鼠标按键被按下时发生。 onmousemove 事件会在鼠标指针移动时发生。 onmouseout 事件会在鼠标指针移出指定的对象时发生。 onmouseup 事件会在鼠标按键被松开时发生。
  • 267. PHP100视频教程(第50讲) Ajax+PHP检查用户名或邮件(三)3、如何获取表单中的数据内容 code document.myform.user.value
  • 268. (第50讲) Ajax+PHP检查用户名或邮件(三)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 269. PHP100视频教程演讲老师:张恩民 官方网站:www.php100.com学习重点会员系统的原理及其安全(第51讲) PHP+MYSQL会员系统的开发(上)
  • 270. PHP100视频教程(第51讲) PHP+MYSQL会员系统的开发(上)会员系统的原理登陆判断保持状态CookieSessionP1P2P3P4P5验证状态及其权限会员系统的安全1、学会使用常量提高md5安全性 2、Cookie/ Session 少用明文信息 3、Session安全性要大于Cookie 4、使用Cookie/ Session读取信息 尽量增加判断信息 5、Cookie/ Session内容要精简 6、对于错误信息及时销毁Cookie/ Session
  • 271. (第51讲) PHP+MYSQL会员系统的开发(上)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 272. PHP100视频教程演讲老师:张恩民 官方网站:www.php100.com学习重点会员系统简单的多层处理和状态(第52讲) PHP+MYSQL会员系统的开发(下)
  • 273. PHP100视频教程(第52讲) PHP+MYSQL会员系统的开发(下)最高权限顺势级别多层处理次一级次二级次三级……无交叉,实现顺序权限控制,可实现多层,也就是上一层 永远大于下一层的权限,常用在留言板,CMS、后台 论坛等程序当中,不适合在ERP,OA等类型系统中使用设置技巧: 为了实现权限的无限层级配置,最高层应使用最小值来 做权限标志位,方便下行可用无线累计的空间
  • 274. PHP100视频教程(第52讲) PHP+MYSQL会员系统的开发(下)会员登录超时mktime(int hour, int minute, int second, int month, int day, int year, int [is_dst] )通过动作时间,如果动作时间超时便踢出!使用mktime是个很好的时间计算函数 可以方便的计算时间差。最小单位是秒。实例操作
  • 275. (第52讲) PHP+MYSQL会员系统的开发(下)PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 276. PHP100视频教程演讲老师:张恩民 官方网站:www.php100.com学习重点1、PHP注入的基本原理 2、防止注入的几种办法 3、PHP其他地方安全设置(第53讲) PHP如何防止注入及开发安全
  • 277. PHP100视频教程(第53讲) PHP如何防止注入及开发安全1、PHP注入的基本原理 程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对 用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据 库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的 SQL Injection,即SQL注入。 受影响的系统:对输入的参数不进行检查和过滤的系统 SQL注入过程 正常来讲,我们通过地址接收一些必要的参数如: PHP100.php?id=2 页面中我们会使用 2 写入到SQL语句中 正常情况:Select * From Table where id=2 如果我们对SQL语句熟悉,就知道2 我们可以替换成我们需要的SQL语句 如:and exists (select id from admin)
  • 278. PHP100视频教程(第53讲) PHP如何防止注入及开发安全2、防止注入的几种办法其实原来就是我们需要过滤一些我们常见的关键字和符合如: Select,insert,update,delete,and,*,等等 function inject_check($sql_str) { return eregi('select|insert|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file |outfile', $sql_str); // 进行过滤 }例子或者是通过系统函数间的过滤特殊符号 Addslashes(需要被过滤的内容)
  • 279. PHP100视频教程(第53讲) PHP如何防止注入及开发安全3、PHP其他地方安全设置1、register_globals = Off 设置为关闭状态 2、SQL语句书写时尽量不要省略小引号和单引号Select * From Table Where id=2 (不规范)Select * From ·Table· Where ·id·=’2’ (规范)3、正确的使用 $_POST $_GET $_SESSION 等接受参数,并加以过滤4、提高数据库命名技巧,对于一些重要的字段可根据程序特点命名5、对于常用方法加以封装,避免直接暴露SQL语句
  • 280. (第53讲) PHP如何防止注入及开发安全PHP100视频教程还有什么疑问可以到 www.php100.com 也可以以发送邮件到 master@php100.com 感谢收看本次教程! 本次演讲老师:张恩民
  • 281. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com学习重点1、mod_rewrite 简介和配置 2、mod_rewrite 规则的使用 3、mod_rewrite 规则修正符(第54讲) Apache Rewrite 拟静态配置
  • 282. PHP100 视频教程(第54讲) Apache Rewrite 拟静态配置1、mod_rewrite 简介和配置Rewirte主要的功能就是实现URL的跳转和隐藏真实地址,基于Perl语言的正则 表达式规范。平时帮助我们实现拟静态,拟目录,域名跳转,防止盗链等如一个普通访问地址为 */php100.php?id=2 可以转成: */PHP100_2.html 或转成: */PHP100_2/Apache配置: 支持httpd.conf 配置和目录 .htaccess配置 启用rewrite # LoadModule rewrite_module modules/mod_rewrite.so 去除前面的 # LoadModule rewrite_module modules/mod_rewrite.so 启用.htaccess AllowOverride None 修改为: AllowOverride All
  • 283. PHP100 视频教程(第54讲) Apache Rewrite 拟静态配置2、mod_rewrite 规则的使用RewriteEngine on RewriteCond %{HTTP_HOST} !^www.php100.com [NC] RewriteRule ^/(.*) http://www.php100.com/ [L]启动rewrite引擎判断主机跳转到RewriteEngine on RewriteRule ^/test([0-9]*).html$ /test.php?id=$1 RewriteRule ^/new([0-9]*)/$ /new.php?id=$1 [R]启动rewrite引擎跳转到
  • 284. PHP100 视频教程(第54讲) Apache Rewrite 拟静态配置3、mod_rewrite 规则修正符 1) R 强制外部重定向 2) F 禁用URL,返回403HTTP状态码。 3) G 强制URL为GONE,返回410HTTP状态码。 4) P 强制使用代理转发。 5) L 表明当前规则是最后一条规则,停止分析以后规则的重写。 6) N 重新从第一条规则开始运行重写过程。 7) C 与下一条规则关联 如果规则匹配则正常处理,以下修正符无效 8) T=MIME-type(force MIME type) 强制MIME类型 9) NS 只用于不是内部子请求 10) NC 不区分大小写 11) QSA 追加请求字符串 12) NE 不在输出转义特殊字符 \%3d$1 等价于 =$1
  • 285. 还有什么疑问可以到 www.php100.com 本次演讲老师:张恩民 感谢收看 PHP100视频教程! PHP100 视频教程
  • 286. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com学习重点1、PDO 简介 和 配置 2、PDO 如何连接 MYSQL 3、PDO 常用方法及其使用(第55讲) PHP5中使用PDO连接数据库
  • 287. PHP100 视频教程(第55讲) PHP5中使用PDO连接数据库1、PDO 简介 和 配置 PDO(PHP Data Object) 是PHP 5 中加入的东西,是PHP 5新加入的一个重大功能,因为在PHP 5以前的 php4/php3都是一堆的数据库扩展来跟各个数据库的连接和处理,什么 php_mysql.dll、php_pgsql.dll、 php_mssql.dll、php_sqlite.dll等等 PHP6中也将默认使用PDO的方式连接,mysql扩展将被作为辅助PHP.iniextension=php_pdo.dll extension=php_pdo_mysql.dll extension=php_pdo_pgsql.dll extension=php_pdo_sqlite.dll extension=php_pdo_mssql.dll extension=php_pdo_odbc.dll extension=php_pdo_firebird.dll …重启web选择需要启用的PDO去除前面的#
  • 288. new PDO(“连接信息”, 'root', '', array(PDO::ATTR_PERSISTENT => true));PHP100 视频教程(第55讲) PHP5中使用PDO连接数据库2、PDO 如何连接new PDO("mysql:host=localhost;dbname=php100","root", “ ");数据库类型连接主机连接的数据库用户和密码默认这个不是长连接,如果需要数据库长连接,需要最后加一个参数: array(PDO::ATTR_PERSISTENT => true) 变成这样:
  • 289. PHP100 视频教程(第55讲) PHP5中使用PDO连接数据库3、PDO 常用方法及其使用PDO::query() 主要是用于有记录结果返回的操作,特别是SELECT操作 PDO::exec() 主要是针对没有结果集合返回的操作,如INSERT、UPDATE等操作 PDO::lastInsertId() 返回上次插入操作,主键列类型是自增的最后的自增ID PDOStatement::fetch() 是用来获取一条记录 PDOStatement::fetchAll() 是获取所有记录集到一个中 $rs = $db->query("SELECT * FROM  PHP100"); while($row = $rs->fetch()){     print_r($row); }例
  • 290. 还有什么疑问可以到 www.php100.com 本次演讲老师:张恩民 感谢收看 PHP100视频教程! PHP100 视频教程
  • 291. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com学习重点1、制作PHP安装程序的原理和步骤 2、制作安装用到的PHP函数 3、制作安装的注意事项(第56讲) 制作PHP安装程序的原理和步骤
  • 292. PHP100 视频教程(第56讲) 制作PHP安装程序的原理和步骤1、制作PHP安装程序的原理和步骤检查目录或 文件的权限修改或 填加配置文件检查配置 文件正确性导入数据库锁定或删除 安装文件原理: 其实PHP程序的安装原理无非就是将数据库结构和 内容导入到相应的数据库中,从这个过程中重新配置 连接数据库的参数和文件,为了保证不被别人恶意使 用安装文件,当安装完成后需要修改安装文件。
  • 293. PHP100 视频教程(第56讲) 制作PHP安装程序的原理和步骤2、制作安装用到的PHP函数is_writable() 检查文件是否可写,用来判断文件权限, 同类函数还有is_readable() 检查文件是否可读,返回布尔值is_writable(“data/config.php”);fopen () 文件操作函数,打开一个文件或新建 fwrite () 文件操作函数,写入内容到文件 rename() 文件操作函数,给文件改名
  • 294. PHP100 视频教程(第56讲) 制作PHP安装程序的原理和步骤3、制作安装的注意事项1、对文件权限进行检查和相关文件夹,如缓存,生成文件,配置文件 2、安装文件尽可能独立,可删除,可改名。 3、数据库导入时,需检查: a、检查是否有建立数据库的权限 b、是否同名数据库的存在 c、考虑到数据库导入的大小是否分段处理 4、检查配置环境,各种模块的支持情况,如:gd2, pdo,rewirte等
  • 295. 还有什么疑问可以到 www.php100.com 本次演讲老师:张恩民 感谢收看 PHP100视频教程! PHP100 视频教程
  • 296. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com学习重点1、PHP备份数据库的原理 2、PHP中mysql相关函数 3、备份时候的注意事项(第57讲) PHP备份数据库的原理和方法
  • 297. PHP100 视频教程(第57讲) PHP备份数据库的原理和方法1、PHP备份数据库的原理查找所有表查找所有字段查找所有数据生成SQL需要列出所有字段名, 字段类型等相关信息读取数据出来注意 特殊符号的转换 addslashes()把数据格式化 生成对应的SQL通过相关函数输出SQL相关信息,并格式化后生成文件,保存!
  • 298. PHP100 视频教程(第57讲) PHP备份数据库的原理和方法2、PHP中mysql相关函数mysql_list_tables() 表查询函数,类似mysql_query() 函数 mysql_fetch_field() 字段信息函数,返回句柄 Name 字段的名称 Table 字段所属数据表的名称 Type 字段的类型 max_length 字段的最大长度 not_null 字段是否不能为空,是,则这一项的值为1 primary_key 字段是否为主键,是,则这一项的值为1 unique_key 字段是否为unique键,是,则这一项的值为1 multiple_key 字段是否不为unique键,是,则这一项的值为1 Numeric 字段是否为数字型,是,则这一项的值为1 Blob 字段是否为blob型,是,则这一项的值为1 Unsigned 数字型的字段是否为unsigned的,是,则这一项的值为1 Zerofill 数字型的字段是否为zerofilled的,是,则这一项的值为1
  • 299. PHP100 视频教程(第57讲) PHP备份数据库的原理和方法CREATE TABLE `help_category` ( `help_category_id` int(5) unsigned NOT NULL, `name` char(64) NOT NULL )3、备份时候的注意事项 例子:1、注意数据库的大小,过大或者过多的表分段处理 2、生成的SQL文件名或者存放不易被猜到 3、备份生成文件可以表或者自动为单位保存 4、可以使用ZIP组件压缩生成的文件以便保持
  • 300. 还有什么疑问可以到 www.php100.com 本次演讲老师:张恩民 感谢收看 PHP100视频教程! PHP100 视频教程
  • 301. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com学习重点1、企业网站都有哪些基本功能 2、如何写企业网站评估报告 3、神奇的BIWEB积木式建站系统(第58讲) 快速设计一个企业网站之BIWEB
  • 302. PHP100 视频教程(第58讲) 快速设计一个企业网站之BIWEB企 业 网 站 单页发布程序新闻发布针对一些企业简介、联系方式、荣誉等 无需分页,只需单页发布即可支持自定义分类,新闻发布需要支持图片上传、后台排版、关键等内容产品展示支持自定义分类,多图上传,介绍,单价等相关字段订单功能对于产品展示或商品出售等做订单后台统计功能留言反馈一个企业网站必须的功能其他:搜索,后台管理,会员管理,采集,生成静态,SEO优化等1、企业网站都有哪些基本功能
  • 303. PHP100 视频教程(第58讲) 快速设计一个企业网站之BIWEB2、如何写企业网站评估报告一个专业的评估报告 对你能否接下单子很重要描述模块根据需求根据地区和个人团队情况填写
  • 304. PHP100 视频教程(第58讲) 快速设计一个企业网站之BIWEB3、神奇的BIWEB积木式建站系统BIWEB 网务通商务智能网站系统,设计初衷就是应用于高负载大流量的大型web项目,其结构灵活多变,可以非常方便的做到分压、分流和负载均衡,是web项目首选的建站系统。通过BIWEB ,可以方便的搭建自己想要的各种web应用,并可在投入最小的硬件成本下负载最大的流量,做到性价比最高。特点: 1、非传统的企业网站源码,他是提供建站底层模块 2、完善的底层框架,可以为开发节省前期很多准备工作 3、添加栏目只需要替换修改即可完成 4、支持多种缓存机制,提高网站系统的速度 5、提供了各类的户外接口,GGsitemap 等 让我们来体验演示一下吧
  • 305. 还有什么疑问可以到 www.php100.com 本次演讲老师:张恩民 感谢收看 PHP100视频教程! PHP100 视频教程
  • 306. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com学习内容1、BIWEB的使用常见问题解答 2、BIWEB目录结构和数据库分析 3、栏目如何更加独立和使用自定义内容 4、从BIWEB我们学到了什么(第59讲) 关于BIWEB常见问题和结构分析
  • 307. PHP100 视频教程(第59讲) 关于BIWEB常见问题和结构分析1、BIWEB的使用常见问题解答(1)为什么安装时白页或出错? 答:是否开启了PDO和PDO_Mysql 模块,还有的时候二次安装导致 (2)为什么修改了文件后会乱码? 答:因为BIWEB全站使用的是UFT8模式,所以如果直接使用记事本打开修 改会导致编码错误,大家可以使用EditPlus 或其他的编译工具。 (3)为什么我增加了新的模块后导航却没有? 答: 这是因为BIWEB的导航暂时还不是智能出现的,需要手工增加 (4)BIWEB是否适合英文网站的开发和支持PHP5.3? 答:同上面所说,因为BIWEB使用的是UTF8编码所以开发英文网站老外看 是没有问题的,新版的BIWEB支持PHP5.3。
  • 308. PHP100 视频教程(第59讲) 关于BIWEB常见问题和结构分析2、BIWEB目录结构和数据库分析红色目录代表系统框架重要目录, 紫色目录代表功能栏目目录, 黑色目录代表系统使用目录。 红色目录中,主要看整站配置文件目录和整站可控配置文件目录,重点记住BIWEB系统中重要的配置数组,系统公共配置数组都是arrG开头的,栏目配置数组以arrM开头的。 紫色目录中,重点看新闻栏目,理解新闻栏目中的配置和程序关系。 黑色目录中,全部不用看,都是系统自用目录。数据库一句话概括: 前缀_模块名 如 : PHP100_news 一个模块对应一张表很容易找到
  • 309. PHP100 视频教程(第59讲) 关于BIWEB常见问题和结构分析3、栏目如何更加独立和使用自定义内容其实每个模块都可以自定义数据库,独立配置一些参数。这样使每个栏目更加独立 常见的配置文件在模块下面的config目录下面: var.inc.php 一般配置数据库信息 type.inc.php 一般配置分类信息,以数组的形式存在 private.inc.php 一般改模块的私有变量信息都在这里,如smarty 、分页等 config.inc.php 一般是模块中需要调用的文件或内容4、从BIWEB我们学到了什么俗话说见多识广,虽然这个程序不能说是完美的程序,但从结构和代码的规范 程度是值得我们学习的,尤其是在扩展性上。初学者写全站可能考虑不到这么大 的扩展型,但要知道这是完全可以实现的,所以这也是我们写程序的方向。 下面的课我讲一些开发中常用的规范。
  • 310. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com开发规范1、PHP中对各类变量内容的命名规范 2、PHP中函数、符号、运算写作规范 3、PHP中各类注释规范 4、数据库设计与操作规范(第60讲) PHP与数据库代码开发规范
  • 311. PHP100 视频教程(第60讲) PHP与数据库代码开发规范1、PHP中对各类变量内容的命名规范(1)目录命名、文件命名、局部变量命名: 使用英文名词、动词,以下划线作为单词的分隔,所有字母均使用小写目录:upload、templates、install、manage…… 文件:index.php 、 register.php 、 config.php…… 变量:$user , $pay_time , $pay_del_cont ……(2)全局常量命名: 使用英文名词、动词,所有字母都使用大写,以下划线分隔每个单词define( 'WEBSITE_NAME', '名称' ); define( 'WEBSITE_URL', '地址' )
  • 312. PHP100 视频教程(第60讲) PHP与数据库代码开发规范1、PHP中对各类变量内容的命名规范(3)数组变量命名: 英文名词、动词,以下划线作为分隔,所有字母均使用小写以array结束$scope_array = array(); $book_id_array = array();(4)对象变量命名: 英文名词、动词,以下划线作为分隔,可以完整采用类名或是简化类名,但是必须明确知道是什么类,所有字母均使用小写,在变量后加上_obj$user_obj = new userAccount(); $pay_obj = new payOrder();(5)类的命名: 使用英文名词,以大写字母作为词的分隔,其他的字母均使用小写,名词的首个字母使用小写,不使用下划线class userAccount{ ……}
  • 313. PHP100 视频教程(第60讲) PHP与数据库代码开发规范1、PHP中对各类变量内容的命名规范(6)方法命名: 使用英文名词、动词,以下划线作为单词的分隔,所有字母均使用小写class userAccount { public $name_account=‘’; function is_account_ok(){ ... } function add_account(){ ... } }关于对象属性的命名同理!
  • 314. PHP100 视频教程(第60讲) PHP与数据库代码开发规范2、PHP中函数、符号、运算写作规范(1)if语句大括号{}规则: 将大括号放置在关键词后方 使用IF语句尽量使用大括号if ( $condition ){ ... }else{ … }if ( $condition1 ) ... else ...尽可能避免右边使用方式
  • 315. PHP100 视频教程(第60讲) PHP与数据库代码开发规范2、PHP中函数、符号、运算写作规范(2)、switch规则 每个case块结束处必须加上break,而default总应该存在处理未知情况,例:switch( $condition ){ case 'user': ... break; case 'type': ... break; default: ... break; }(3)、声明定位规则 声明代码块需要对齐,且初次使用变量时需要初始化 $tableName = ''; $databaseObject = ''; 尽量不使用以下方式,例: $tableName; $accuntName = ''; $databaseObject = '';
  • 316. PHP100 视频教程(第60讲) PHP与数据库代码开发规范2、PHP中函数、符号、运算写作规范html的form表单各个元素名称与数据库字段尽量保持一致。 不要采用缺省方法测试非零值,必须显式测试,例: if ( $name_pay_into != false ){ ... }else{ ... }*尽可能使用单引号''而不是双引号"",在需要加入变量或是写sql语句除外。 *php文件中尽可能不出现html语句,如果实在无法解决尽量少用,考虑到模板的兼容性, html文件中尽可能避免出现php语句。 *通常每个方法只执行一项逻辑动作事务,所以对它们的命名应该清楚的说明它们是做什么的: 用email_error_check()代替error_check()。 请注意命名不要与系统方法冲突。
  • 317. PHP100 视频教程(第60讲) PHP与数据库代码开发规范3、PHP中各类注释规范/** * 分页预处理函数 * sql SQL语句 * page 当前页数 * limit 每页显示的数量 * maxs 查询总数 */ function limit($sql,$page='0',$limit=10,$maxs=''){ }//用户检测 if( $check_obj->username( $username ) == true ){ … }$user_name = $_GET[user]; //获取用户信息
  • 318. PHP100 视频教程(第60讲) PHP与数据库代码开发规范4、数据库设计与操作规范数据库规范 数据库名称应该由概述项目内容的小写英文名词组成,以下划线分隔单词, 避免跨平台时可能出现的大小写错误。 数据表名称应该由物件对象名称的小写英文名词组成(尽可能对应系统中的 业务类名称),以下划线分隔单词,避免跨平台时可能出现的大小写错误。 数据表的字段应避免使用varchar、text等不定长的类型, 时间信息的字段使用int类型存储。 查询数据连接多表时各资源应该使用全名称,即tableName.fieldName, 而不是fieldName。 SQL语句应尽可能符合ansi92标准,避免使用特定数据库对SQL语言的扩充特性。
  • 319. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com开发规范1、设计新闻系统简单的UML模 2、设计所需的环境、模块、模板样式 3、数据库UML设计和创建数据库结构(第61讲) PHP+MySQL新闻系统的开发(1)
  • 320. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com后台开发本讲重点是熟练运用类、数组、表单、循环完成 后台管理的基本开发和操作。 开发:后台配置模块、新闻分类模块(第63讲) PHP+MySQL新闻系统的开发(3)
  • 321. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com后台开发本讲重点是熟练运用类、数组、表单、循环完成 后台管理的基本开发和操作。 开发:后台配置模块、新闻分类模块(第64讲) PHP+MySQL新闻系统的开发(4)
  • 322. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com后台开发新闻后台:添加新闻,新闻列表,编辑新闻 学习重点:灵活运用,插 查 删 改 功能(第65讲) PHP+MySQL新闻系统的开发(5)
  • 323. 演讲老师:张恩民 官方网站:www.php100.com(第65讲) PHP+MySQL新闻系统的开发(5)admin_news_add.phpadmin_news_list.phpadmin_news_edit.php新闻编辑,通过ID获取新闻内容并更新添加新闻,分别添加到新闻基础表和内容表 主要学习添加完后获得最后id新闻列表,复合查询、列表分页,删除等操作重点:灵活运用,插查删改功能PHP100 视频教程
  • 324. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com前台的开发主要学习如何使用Smarty模板开发前台应用(第67讲) PHP+MySQL新闻系统的开发(7)
  • 325. PHP100 视频教程(第67讲) PHP+MySQL新闻系统的开发(7)注意事项: 1、配置模板图片,Css路径 2、尽可能的将变量写入数组 3、模板文件名尽可能的与PHP文件相关 4、为了方便使用书写通用调用方法,将header.php footer.php独立出来
  • 326. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com前台的开发主要学习如何使用Smarty模板开发前台应用(第68讲) PHP+MySQL新闻系统的开发(8)
  • 327. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com前台的开发主要学习如何使用Smarty模板开发前台应用(第69讲) PHP+MySQL新闻系统的开发(9)
  • 328. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com前台的开发(第70讲) PHP5.3.1+Apache+Mysql配置1、熟悉PHP 5.3.1 几个新版本的区别 2、Apache PHP Mysql 之间的关系 3、熟悉Apache PHP 重要的几个配置文件 4、实际操作在windows下搭配WAMP环境
  • 329. PHP100 视频教程(第70讲) PHP5.3.1+Apache+Mysql配置1、熟悉PHP 5.3.1 几个新版本的区别官网下载地址: windows.php.net/download/ www.php100.comPHP 5.3.1 VC9 VC6 的区别 VC9 是专门为IIS定制的脚本支持最新的微软组件从而提高效率 VC6 是为了其他WEB服务软件提供的脚本,如 Apache 在VC9和VC6当中又分为: Non Thread Safe 和 Thread Safe 先从字面意思上理解,Thread Safe是线程安全,执行时会进行线程(Thread) 安全检查,以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。 Non Thread Safe是非线程安全,在执行时不进行线程(Thread)安全检查。PHP 5.3.1 VC9 Non Thread SafePHP 5.3.1 VC9 Thread SafePHP 5.3.1 VC6 Non Thread SafePHP 5.3.1 VC6 Thread Safe
  • 330. PHP100 视频教程(第70讲) PHP5.3.1+Apache+Mysql配置3、Apache PHP Mysql 之间的关系ApachePHPMysql载入PHP脚本执行PHP脚本连接mysql
  • 331. PHP100 视频教程(第70讲) PHP5.3.1+Apache+Mysql配置3、熟悉Apache PHP 重要的几个配置文件Apache配置文件 httpd.conf   LoadModule php5_module C:/WAMP/PHP5.3.1/php5apache2_2.dll   PHPIniDir "C:/WAMP/PHP5.3.1"   AddType application/x-httpd-php .php .phtmlPHP配置文件 PHP.ini   php.ini-development 、 php.ini-production 修改成 php.ini 文件即可   extension_dir,设置为extension_dir = "C:/WAMP/PHP5.3.1/ext"载入PHP脚本配置PHP.ini的目录支持解析PHP扩展
  • 332. PHP100 视频教程(第70讲) PHP5.3.1+Apache+Mysql配置4、实际操作在windows下搭配WAMP环境Apache 2.2.14 安装版 PHP 5.3.1 VC6 x86 Thread Safe 解压版Zip Mysql 5.0.x 安装或解压版都可以,只要能正常启动
  • 333. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com重点内容(第71讲) PHP SQLite 的使用和配置1、PHP 中 SQLite 简介 和 特点 2、在PHP中如何开启使用 SQLite 3、创建SQLite 数据库的两种方法 4、SQLiteManager 简单实用和配置
  • 334. PHP100 视频教程(第71讲) PHP SQLite 的使用和配置1、PHP 中 SQLite 简介 和 特点SQLite是一款轻型的数据库,是遵守ACID标准,它占用资源非常的低,可能只需要几百K的内存就够了。 它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够支持很多程序语言,如C、PHP、Java等PHP + SQLiteASP + Access类似组合注:SQLite 的数据库是个独立的文件,和程序一样保持在WEB目录下即可特点: 1、SQLite数据库足够小, 大致3万行C代码, 共计250K左右 2、配置简单,支持各类平台:Windows/Linux/Unix/MAC 3、最大的数据库支持2T ------- 1T = 1024G 4、SQLite支持无数据库类型 (为提高效率不建议) 5、SQLite完全开源,懂得C的朋友可以下载源码完善它
  • 335. PHP100 视频教程(第71讲) PHP SQLite 的使用和配置2、在PHP中如何开启使用 SQLite在PHP 5.2.x 以后自带了 SQLtie PDO数据库功能,只需要在配置中开启即可 PHP.ini ;extension=php_pdo_sqlite.dll在PHP 5.1.x 以后自带了 SQLtie 数据库功能,只需要在配置中开启即可 PHP.ini ;extension=php_sqlite.dll在PHP 5.1.x 以后自带了 SQLtie 数据库功能,只需要在配置中开启即可 PHP.ini ;extension=php_sqlite.dll注: 使用WAMP的朋友直接在配置中开启即可
  • 336. PHP100 视频教程(第71讲) PHP SQLite 的使用和配置3、创建SQLite 数据库的两种方法1、使用PHP函数直接开启建立sqlite_open ("php100.db"); 使用物理地址路径数据库存在直接打开,无则新建2、通过SQLiteManager来创建管理 SQLite 数据库文件 使用 WAMPserver 5 自带,自己配置的可以到 PHP100.com 下载
  • 337. PHP100 视频教程(第71讲) PHP SQLite 的使用和配置4、SQLiteManager 简单实用和配置明确几个定义 1、SQLiteManager与PHPmyadmin不同,需要添加管理的数据库 2、Windows下使用添加路径需要将 X: \**\** 改为 X:/**/** 3、 创建数据库的时候需要指定SQLite 数据库文件存放的路径
  • 338. PHP100 视频教程(第71讲) PHP SQLite 的使用和配置感谢收看PHP100视频教程www.php100.com
  • 339. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com重点内容(第72讲) PHP + SQLite 常用函数与应用1、熟悉SQLite常用函数 2、制作一个简单的SQLite例子
  • 340. PHP100 视频教程(第72讲) PHP + SQLite 常用函数与应用1、熟悉SQLite常用函数sqlite_open(数据库名,模式,错误信息)有则连接,无则自动建立对数据库操作的读写模式默认0666返回数据库错误信息sqlite_query(数据库连接参数,SQL参数)所要操作的数据库要执行的SQL语句打开数据库数据库执行
  • 341. PHP100 视频教程(第72讲) PHP + SQLite 常用函数与应用1、熟悉SQLite常用函数sqlite_fetch_array(SQL返回句柄,返回索引)数据库指针sqlite_num_rows(SQL返回句柄)统计条数sqlite_last_insert_rowid(数据库连接参数)最后一条IDSQLITE_ASSOC 只会返回关联索引(有名称字段)而 SQLITE_NUM 只会返回数字索引(有序字段数)。 SQLITE_BOTH 会同时返回关联和数字索引。 SQLITE_BOTH 是本函数的默认值
  • 342. PHP100 视频教程(第72讲) PHP + SQLite 常用函数与应用2、制作一个简单的SQLite例子
  • 343. PHP100 视频教程(第72讲) PHP + SQLite 常用函数与应用感谢收看PHP100视频教程www.php100.com
  • 344. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com重点内容(第73讲) PHP MemCached高级缓存配置1、Memcache 相关介绍 2、Memcache Win32 的安装和PHP中的配置 3、PHP中测试 Memcache功能
  • 345. PHP100 视频教程(第73讲) PHP MemCached高级缓存配置1、Memcache 相关介绍使用Memcache的网站一般流量都是比较大的,为了缓解数据库的压力, 让Memcache作为一个缓存区域,把部分信息保存在内存中,在前端能 够迅速的进行存取。memcache是一个高性能的分布式的内存对象缓存系统,它能够用来存储各种 格式的数据,包括图像、视频、文件以及数据库检索的结果等DB数据源usermemcached
  • 346. PHP100 视频教程(第73讲) PHP MemCached高级缓存配置2、Memcache Win32 的安装和PHP中的配置下载:Memcache Win32 www.php100.com www.jehiah.cz/projects/memcached-win32/ 1、解压到目录:c:\mem (自定义,任何目录) 2、c:\mem\memcached.exe -d install 3、c:\mem\memcached.exe -d start (启动服务) 4、telnet 127.0.0.1 11211 (使用telnet连接测试是否成功) 5、输入:stats 命令查看基本信息
  • 347. PHP100 视频教程(第73讲) PHP MemCached高级缓存配置2、Memcache Win32 的安装和PHP中的配置PHP中配置 Memcache 1、下载:php_memcache.dll 组件 (WAMP自带了) 2、复制 php_memcache.dll 到指定的组件目录,默认在 php\ext\ 3、在PHP.ini 加入一句话:extension=php_memcache.dll 4、重启WEB服务,使用 phpinfo() 函数查看启用情况
  • 348. PHP100 视频教程(第73讲) PHP MemCached高级缓存配置3、PHP中测试 Memcache功能 $mem = new Memcache; $mem->connect('127.0.0.1', 11211) or die ("连接失败"); $mem->getVersion();实例化服务器地址端口号获得版本信息 ,可使用echo 打印
  • 349. PHP100 视频教程(第73讲) PHP MemCached高级缓存配置感谢收看PHP100视频教程www.php100.com
  • 350. PHP100 视频教程演讲老师:张恩民 官方网站:www.php100.com重点内容(第74讲) PHP MemCached 高级缓存应用1、Memcache WEB 中操作流程 2、认识一个 Memcache 的方法使用 3、Memcache 有哪些常用方法 4、实际操作一个Memcache例子
  • 351. PHP100 视频教程(第74讲) PHP MemCached 高级缓存应用1、Memcache WEB 中操作流程
  • 352. PHP100 视频教程(第74讲) PHP MemCached 高级缓存应用2、认识一个 Memcache 的方法使用$memcache = new memcache; $memcache->connect('127.0.0.1', 11211) or die ("连接失败"); $memcache->set('Key', 'Value', 'Zip', 'Time'); $val = $memcache->get('Key');实例化connect方法连接set方法添加一个缓存值(键名,键值,是否压缩,保持时间)get通过键名,获取缓存中的内容
  • 353. PHP100 视频教程(第74讲) PHP MemCached 高级缓存应用Memcache::add — 添加一个值,如果已经存在,则返回false Memcache::addServer — 添加一个可供使用的服务器地址 Memcache::close — 关闭一个Memcache对象 Memcache::connect — 创建一个Memcache对象 memcache_debug — 控制调试功能 Memcache::decrement — 对保存的某个key中的值进行减法操作 Memcache::delete — 删除一个key值 Memcache::flush — 清除所有缓存的数据 Memcache::get — 获取一个key值 Memcache::getExtendedStats — 获取进程池中所有进程的运行系统统计 Memcache::getServerStatus — 获取运行服务器的参数 Memcache::getStats — 返回服务器的一些运行统计信息 Memcache::getVersion — 返回运行的Memcache的版本信息 Memcache::increment — 对保存的某个key中的值进行加法操作 Memcache::pconnect — 创建一个Memcache的持久连接对象 Memcache::replace — R对一个已有的key进行覆写操作 Memcache::set — 添加一个值,如果已经存在,则覆写 Memcache::setCompressThreshold — 对大于某一大小的数据进行压缩 Memcache::setServerParams — 在运行时修改服务器的参数3、Memcache 有哪些常用方法
  • 354. PHP100 视频教程(第74讲) PHP MemCached 高级缓存应用
  • 355. PHP100 视频教程(第74讲) PHP MemCached 高级缓存应用感谢收看PHP100视频教程www.php100.com