PHP动态网站开发案例课堂

PHP动态网站开发案例课堂【PHP动态网站开发案例课堂】《PHP动态网站开发案例课堂》是2016年3月1日清华大学出版社出版的图书,作者是刘玉红、蒲娟 。
基本介绍书名:PHP动态网站开发案例课堂
作者:刘玉红、蒲娟
ISBN:9787302428862
定价:68元
出版社:清华大学出版社
出版时间:2016年3月1日
内容简介本书以零基础讲解为宗旨,用实例引导读者深入学习,採取“PHP基础知识→核心技术→操作数据库→高级套用→项目实战”的讲解模式,深入浅出地讲解PHP开发动态网站的各项技术及实战技能 。本书第1篇“PHP基础知识”主要讲解初识PHP,配置PHP伺服器环境,PHP语言基础,流程控制和函式,字元串和正则表达式、PHP数组及操作等;第2篇“核心技术”主要讲解PHP与Web页面互动、时间和日期,面向对象编程,错误、异常处理与调试,档案系统与操作,图形图像处理技术,Cookie和会话管理,PHP加密技术等;第3篇“运算元据库”主要讲解MySQL资料库基础,使用MySQL Workbench管理MySQL资料库,PHP操作MySQL资料库等;第4篇“高级套用”主要讲解PDO资料库抽象类库,JavaScript编程基础,PHP与XML技术的综合套用,PHP与Ajax的综合套用,MVC结构与Smarty模板,Zend Framework框架等;第5篇“项目实战”主要通过一个综合案例开发论坛来整体讲解PHP在动态网站开发中的技术 。本书附带的DVD光碟中赠送了丰富的资源,诸如本书实例完整原始码、教学幻灯片、本书精品教学视频、常用SQL语句速查手册、PHP常用函式速查手册、16个经典项目开发完整源码、PHP网站开发工程师面试技巧、PHP网站开发工程师常见面试题、优秀网站开发工程师之路——网站开发经验及技巧大汇总 。本书适合任何想学习PHP开发动态网站的人员,无论您是否从事计算机相关行业,无论您是否接触过PHP,通过学习均可快速掌握PHP开发动态网站的方法和技巧 。章节目录第1篇PHP基础知识第1章初识PHP 31.1了解PHP 41.1.1PHP的概念 41.1.2PHP的发展历程 41.1.3PHP语言的优势 51.2PHP的套用领域 51.3PHP5.5的新特点 61.4PHP常用开发工具 81.4.1PHP代码开发工具 81.4.2网页设计工具 91.4.3文本编辑工具 91.5网站建设的基本流程 101.5.1网站规划 101.5.2蒐集资料 101.5.3製作网页 111.5.4网站测试 121.5.5申请域名 121.5.6申请空间 121.5.7网站备案 121.5.8发布网页 161.5.9网站推广和维护 161.6高手甜点 171.7跟我练练手 17第2章配置PHP伺服器环境 192.1PHP伺服器概述 202.2安装PHP前的準备工作 202.2.1软硬体环境 202.2.2实例1——获取PHP5.5安装资源包 212.3PHP+IIS伺服器的安装配置 222.3.1实例2——IIS简介及其安装 232.3.2实例3——PHP的安装 242.3.3实例4——设定虚拟目录 262.4PHP+Apache伺服器的环境搭建 272.4.1Apache简介 282.4.2实例5——关闭原有的网站伺服器 282.4.3实例6——安装Apache 292.4.4实例7——将PHP与Apache建立关联 302.5实例8——Windows下使用WampServer组合包 322.6实例9——测试第一个PHP程式 342.7高手甜点 352.8跟我练练手 36第3章PHP语言基础 373.1PHP标识 383.1.1短风格 383.1.2Script风格 383.1.3ASP风格 383.2编码规範 383.2.1什幺是编码规範 393.2.2PHP的一些编码规範 393.3常量 403.3.1实例1——声明和使用常量 403.3.2实例2——内置常量 413.4变数 433.4.1PHP中的变数声明 433.4.2实例3——可变变数与变数的引用 433.4.3实例4——变数作用域 443.5变数的类型 483.5.1什幺是类型 483.5.2整型 493.5.3浮点型 493.5.4布尔型 493.5.5实例5——字元串型 503.5.6实例6——数组型 513.5.7对象型 533.5.8NULL型 533.5.9资源类型 543.5.10实例7——数据类型之间相互转换 543.6运算符 553.6.1实例8——算术运算符 553.6.2实例9——字元串运算符 563.6.3赋值运算符 573.6.4实例10——比较运算符 583.6.5逻辑运算符 593.6.6按位运算符 593.6.7否定控制运算符 603.6.8错误控制运算符 603.6.9三元运算符 603.6.10运算符的优先权和结合规则 603.7PHP的表达式 603.8实例11——创建多维数组 613.9高手甜点 623.10跟我练练手 62第4章流程控制和函式 634.1流程控制概述 644.2条件控制结构 644.2.1实例1——单一条件分支结构(if语句) 644.2.2实例2——双向条件分支结构(if…else语句) 654.2.3实例3——多向条件分支结构(elseif语句) 664.2.4实例4——多向条件分支结构(switch语句) 684.3循环控制结构 694.3.1实例5——while循环语句 69 4.3.2实例6——do…while循环语句 714.3.3实例7——for循环语句 724.3.4实例8——foreach循环语句 734.3.5实例9——流程控制的另一种书写格式 744.3.6实例10——使用break/continue语句跳出循环 764.4函式 774.4.1PHP函式概述 774.4.2实例11——定义和调用函式 774.4.3实例12——向函式传递参数数值 784.4.4实例13——向函式传递参数引用 794.4.5实例14——从函式中返回值 804.4.6实例15——对函式的引用 814.4.7实例16——对函式取消引用 824.5实例17——条件分支结构的综合套用 834.6实例18——循环控制结构的综合套用 844.7高手甜点 854.8跟我练练手 86第5章字元串和正则表达式 875.1实例1——字元串的单引号和双引号 885.2实例2——字元串的连线符 895.3字元串的基本操作 915.3.1手动和自动转义字元串中的字元 915.3.2实例3——计算字元串的长度 915.3.3实例4——字元串单词统计 925.3.4实例5——清理字元串中的空格 925.3.5实例6——字元串切分与组合 935.3.6实例7——字元串子串截取 945.3.7实例8——字元串子串替换 955.3.8实例9——字元串查找 965.4什幺是正则表达式 975.5正则表达式语法规则 975.5.1方括弧([]) 985.5.2连字元(-) 985.5.3点号字元(.) 985.5.4限定符(+、*、?、{n,m}) 985.5.5行定位符(^和$) 985.5.6排除字元([^]) 995.5.7括弧字元(()) 995.5.8选择字元(|) 995.5.9转义字元(\)与反斜槓(\ 995.5.10认证email的正则表达 995.5.11实例10——使用正则表达式对字元串进行匹配 1005.5.12实例11——使用正则表达式替换字元串子串 1015.5.13实例12——使用正则表达式切分字元串 1025.6实例13——创建酒店系统线上订房表 1035.7高手甜点 1065.8跟我练练手 106 第6章PHP数组及操作 1096.1什幺是数组 1106.2数组类型 1106.2.1实例1——数字索引数组 1106.2.2实例2——关联索引数组 1116.3数组构造 1126.3.1实例3——一维数组 1126.3.2实例4——多维数组 1136.4遍历数组 1156.4.1实例5——遍历一维数字索引数组 1156.4.2实例6——遍历一维联合索引数组 1166.4.3实例7——遍历多维数组 1176.5数组排序 1186.5.1实例8——一维数组排序 1186.5.2实例9——多维数组排序 1206.6实例10——字元串与数组的转换 1216.7向数组中添加和删除元素 1226.7.1实例11——向数组中添加元素 1226.7.2实例12——从数组中删除元素 1246.8实例13——查询数组中指定元素 1266.9实例14——统计数组元素个数 1276.10实例15——删除数组中重複元素 1296.11实例16——调换数组中的键值和元素值 1306.12实例17——数组的序列化 1316.13高手甜点 1326.14跟我练练手 132第2篇核心技术第7章PHP与Web页面互动 1377.1实例1——使用动态内容 1387.2表单与PHP 1397.3表单设计 1397.3.1表单基本结构 1397.3.2实例2——文本框 1397.3.3实例3——选项框 1417.3.4实例4——单选按钮 1427.3.5实例5——下拉列表 1447.3.6实例6——重置按钮 1457.3.7实例7——提交按钮 1467.4传递数据的两种方法 1487.4.1用POST方式传递数据 1497.4.2实例8——用GET方式传递数据 1497.5PHP获取表单传递数据的方法 1507.6实例9——PHP对URL传递的参数进行编码 1517.7实例10——PHP与Web表单的综合套用 1517.8高手甜点 1537.9跟我练练手 154第8章时间和日期 1558.1系统时区设定 1568.1.1时区划分 1568.1.2时区设定 1568.2PHP日期和时间函式 1568.2.1关于UNIX时间戳 1568.2.2实例1——获取当前时间戳 1578.2.3获取当前日期和时间 1588.2.4实例2——使用时间戳获取日期信息 158 8.2.5实例3——检验日期的有效性 1618.2.6实例4——输出格式化时间戳的日期和时间 1628.2.7实例5——显示本地化的日期和时间 1638.2.8实例6——将日期和时间解析为UNIX时间戳 1658.2.9日期和时间在PHP和MySQL数据格式之间转换 1658.3实例7——比较两个时间的大小 1668.4实例8——实现倒计时功能 1678.5高手甜点 1678.6跟我练练手 168第9章面向对象编程 1699.1类和对象的介绍 1709.2PHP中类的操作 1719.2.1类的声明 1719.2.2成员属性 1719.2.3成员方法 1729.2.4类的实例化 1729.2.5实例1——访问类中的成员属性和方法 1739.3实例2——构造方法和析构方法 1749.4实例3——访问方法 1769.5实例4——类的继承 1789.6抽象类和接口 1799.6.1实例5——抽象类 1799.6.2实例6——接口 1809.7面向对象的多态性 1839.7.1实例7——通过继承实现多态 1839.7.2实例8——通过接口实现多态 1849.8高手甜点 1869.9跟我练练手 186第10章错误、异常处理与调试 18710.1常见的错误和异常 18810.2错误处理 19110.2.1php.ini中的错误处理机制 19110.2.2实例1——套用DIE语句调试 19110.2.3实例2——自定义错误和错误触发器 19210.2.4实例3——错误记录 19610.3异常处理 19710.3.1实例4——异常的基本处理方法 19710.3.2实例5——自定义的异常处理器 19910.3.3实例6——处理多个异常 20010.3.4实例7——设定顶层异常处理器 20210.4实例8——处理异常或错误 20310.5高手甜点 20410.6跟我练练手 205第11章档案系统与操作 20711.1档案操作 20811.1.1实例1——档案数据写入 20811.1.2实例2——档案数据读取 21111.2实例3——目录操作 21311.3实例4——档案的上传 21811.4实例5——编写文本类型的访客计算器 22011.5高手甜点 22111.6跟我练练手 221第12章图形图像处理技术 223 12.1实例1——在PHP中载入GD库 22412.2图形图像的典型套用案例 22612.2.1实例2——创建一个简单的图像 22612.2.2实例3——使用GD2函式在照片上添加文字 22812.2.3实例4——使用TrueType字型处理中文生成图片 22912.3Jpgraph库的使用 23112.3.1实例5——Jpgraph的安装 23112.3.2实例6——Jpgraph的配置 23212.3.3实例7——製作柱形图与折线图统计图 23212.3.4实例8——製作圆形统计图 23412.4实例9——製作3D饼形统计图 23612.5高手甜点 23712.6跟我练练手 238第13章Cookie和会话管理 23913.1Cookie基本操作 24013.1.1什幺是Cookie 24013.1.2实例1——创建Cookie 24013.1.3实例2——读取Cookie 24113.1.4实例3——删除Cookie 24213.2认识Session 24313.2.1什幺是Session 24313.2.2Session基本功能 24413.2.3Cookie与Session 24413.2.4储存SessionID在Cookie或URL中 24413.3会话管理 24413.3.1实例4——创建会话 24413.3.2实例5——注册会话变数 24513.3.3实例6——使用会话变数 24613.3.4实例7——注销和销毁会话变数 24613.4实例8——会话管理的综合套用 24713.5高手甜点 24813.6跟我练练手 249第14章PHP加密技术 25114.1使用PHP加密函式 25214.1.1实例1——使用md5()函式进行加密 25214.1.2实例2——使用crypt()函式进行加密 25214.1.3实例3——使用sha1()函式进行加密 25414.2使用PHP加密扩展库 25414.2.1实例4——安装和使用Mcrypt扩展库 25414.2.2实例5——使用Mhash扩展库 25614.3高手甜点 25814.4跟我练练手 259第3篇资料库操作 第15章MySQL资料库基础 26315.1什幺是MySQL 26415.1.1客户机—伺服器软体 26415.1.2MySQL版本 26415.1.3MySQL的优势 26515.2启动服务并登录MySQL资料库 26515.2.1实例1——启动MySQL服务 26615.2.2实例2——登录MySQL资料库 26715.2.3实例3——配置Path变数 26915.3MySQL资料库的基本操作 27115.3.1实例4——创建资料库 27115.3.2实例5——查看资料库 27115.3.3实例6——删除资料库 27215.3.4实例7——选择资料库 27215.4MySQL数据表的基本操作 27315.4.1实例8——创建数据表 27315.4.2实例9——查看数据表结构 27415.4.3实例10——修改数据表结构 27515.4.4实例11——删除数据表 27615.5MySQL语句操作 27615.5.1实例12——插入记录 27715.5.2实例13——查询记录 27715.5.3实例14——修改记录 27815.5.4实例15——删除记录 27815.6MySQL资料库的备份与还原 27815.6.1实例16——数据备份 27915.6.2实例17——数据还原 28515.7高手甜点 28715.8跟我练练手 288第16章使用MySQLWorkbench管理MySQL资料库 28916.1MySQLWorkbench简介 29016.1.1MySQLWorkbench概述 29016.1.2MySQLWorkbench的优势 29016.1.3MySQLWorkbench的安装 29016.2SQLDevelopment的基本操作 29316.2.1创建资料库连线 29316.2.2创建新的资料库 29416.2.3创建和删除新的数据表 29616.2.4添加、修改表记录 29916.2.5查询表记录 29916.2.6修改表结构 30016.3DataModeling的基本操作 30116.3.1建立E-R模型 30116.3.2导入E-R模型 30516.4ServerAdministration的基本操作 30716.4.1管理MySQL用户 30716.4.2备份MySQL资料库 310 16.4.3还原MySQL资料库 31316.5高手甜点 31416.6跟我练练手 315第17章PHP操作MySQL资料库 31717.1PHP访问MySQL资料库的一般步骤 31817.2实例1——连线资料库前的準备工作 31817.3PHP操作MySQL资料库的函式 31917.3.1实例2——通过mysqli类库访问MySQL资料库 31917.3.2实例3——使用mysqli_connect()函式连线MySQL伺服器 32117.3.3实例4——使用mysqli_select_db()函式选择资料库档案 32217.3.4实例5——使用mysqli_query()函式执行SQL语句 32217.3.5实例6——使用mysqli_fetch_assoc()函式从数组结果集中获取信息 32217.3.6实例7——使用mysqli_fetch_object()函式从结果中获取一行作为对象 32317.3.7实例8——使用mysqli_num_rows()函式获取查询结果集中的记录数 32317.3.8实例9——使用mysqli_free_result()函式释放资源 32317.3.9实例10——使用mysqli_close()函式关闭连线 32417.4实例11——使用insert语句动态添加用户信息 32417.5实例12——使用select语句查询数据信息 32617.6高手甜点 32817.7跟我练练手 329第4篇高级套用第18章PDO资料库抽象类库 33318.1PDO概述 33418.2实例1——PDO的安装 33418.3使用PDO操作MySQL 33518.3.1实例2——连线MySQL资料库的方法 33518.3.2实例3——使用PDO时的trycatch错误处理结构 33618.3.3实例4——使用PDO执行SQL的选择语句 33818.3.4实例5——使用PDO获取返回数据的类方法 33918.3.5实例6——使用PDO执行SQL的添加、修改语句 34118.3.6实例7——使用PDO执行SQL的删除语句 34218.4实例8——PDO的prepare表述 34318.5高手甜点 34418.6跟我练练手 345 第19章JavaScript编程基础 34719.1认识JavaScript 34819.1.1什幺是JavaScript 34819.1.2JavaScript的特点 34819.2JavaScript在HTML中的使用 34919.2.1实例1——在HTML网页头中嵌入JavaScript代码 34919.2.2实例2——在HTML网页中嵌入JavaScript代码 35019.2.3实例3——在HTML网页的元素事件中嵌入JavaScript代码 35119.2.4实例4——在HTML中调用已经存在的JavaScript档案 35219.2.5实例5——通过JavaScript伪URL引入JavaScript脚本代码 35319.3JavaScript的基本语法 35419.3.1执行顺序 35519.3.2区分大小写 35519.3.3分号与空格 35519.3.4对代码行进行折行 35519.3.5实例6——注释 35619.4JavaScript的数据结构 35719.4.1标识符 35719.4.2关键字 35819.4.3保留字 35819.4.4常量 35919.4.5实例7——变数 35919.5看透代码中的数据类型 36119.5.1实例8——typeof运算符 36219.5.2实例9——Undefined类型 36319.5.3实例10——Null类型 36319.5.4实例11——Boolean类型 36419.5.5实例12——Number类型 36519.5.6实例13——String类型 36619.6条件判断语句 36719.6.1实例14——if语句 36719.6.2实例15——if…else语句 36819.6.3实例16——switch语句 36919.7循环控制语句 37119.7.1实例17——while语句 37119.7.2实例18——do…while语句 37219.7.3实例19——for循环 37319.8在PHP中调用JavaScript代码 37419.8.1实例20——验证表单元素的值是否为空 37419.8.2实例21——实现即时验证效果 37519.9实例22——製作树形选单 37719.10高手甜点 38119.11跟我练练手 382 第20章PHP与XML技术的综合套用 38320.1实例1——理解XML概念 38420.2XML语法基础 38520.2.1实例2——XML文档组成和声明 38520.2.2实例3——XML元素介绍 38720.2.3处理指令实体引用 38920.2.4实例4——XML命名空间 38920.2.5实例5——XMLDTD 39020.2.6实例6——使用CDATA标籤 39120.3实例7——将XML文档转换为HTML加以输出 39220.4实例8——在PHP中创建XML文档 39220.5使用SimpleXML扩展 39320.5.1实例9——创建SimpleXMLElement对象 39320.5.2实例10——访问特定节点元素和属性 39520.5.3实例11——添加XML元素和属性 39620.6实例12——动态创建XML文档 39720.7高手甜点 39820.8跟我练练手 398第21章PHP与Ajax的综合套用 39921.1Ajax概述 40021.1.1实例1——什幺是Ajax 40021.1.2Ajax的关键元素 40321.1.3实例2——CSS与Ajax 40321.2Ajax快速入门 40421.2.1实例3——全面剖析XMLHttpRequest对象 40421.2.2实例4——发出Ajax请求 40621.2.3实例5——处理伺服器回响 40821.3实例6——在PHP中套用Ajax技术的套用 40921.4高手甜点 41421.5跟我练练手 415第22章MVC结构与Smarty模板 41722.1MVC概述 41822.2什幺是模板引擎 41922.3Smarty概述 41922.3.1什幺是Smarty 41922.3.2Smarty与MVC 42022.4Smarty的安装和配置 42022.4.1实例1——Smarty下载和安装 42022.4.2实例2——第一个Smarty程式 42122.5Smarty模板设计 42222.5.1Smarty模板档案 42222.5.2实例3——Smarty标识 422 22.5.3实例4——Smarty变数 42422.5.4实例5——Smarty数组 42522.5.5实例6——Smarty中流程控制语句 42622.6高手甜点 42822.7跟我练练手 428第23章ZendFramework框架 42923.1什幺是ZendFramework框架 43023.2ZendFramework的目录结构 43023.3ZendFramework的安装与测试 43123.3.1实例1——ZendFramework的安装 43123.3.2实例2——创建一个新的ZendFramework套用 43123.4PHP与ZendFramework的基本操作 43423.4.1实例3——在ZendFramework套用中创建控制层档案 43423.4.2实例4——在ZendFramework的控制层档案中添加一个action 43523.4.3实例5——在ZendFramework中创建布局(layout) 43623.4.4实例6——在ZendFramework中的资料库操作 43723.4.5实例7——在ZendFramework中创建表单 43823.5高手甜点 44023.6跟我练练手 440第5篇项目实战第24章开发论坛 44324.1网站的需求分析 44424.1.1需求分析 44424.1.2网站功能模组分析 44424.2资料库分析 44424.2.1分析资料库 44524.2.2创建数据表 44524.3论坛的代码实现 44624.3.1资料库连线相关档案 44624.3.2论坛主页面 45224.3.3新用户注册页面 45624.3.4论坛帖子的相关页面 45924.3.5后台管理系统的相关页面 469