2025-03-09 10:10:02 | 我爱编程网
函,即信;公函即公务信件。它是上下级和平行机关或不相隶属机关之间在商洽和联系工作、询问和答复问题时所使用的文体。函的特点是不受公文规定的严格限制,如不用正式文件头,也可不编文件号,有时还可不拟标题,因此用起来极为简便。
公函的用法
一、下级机关向上级机关询问一般事宜,或上级机关答复或催办下级机关有关事宜。
二、平行机关或不相隶属机关之间商洽有关事宜,
三、用函来通知一般事项。如通知开一般性的会议、要求下级机关报送某项材料或统计某些数字等时,也常用公函。
四、向上级机关请示较小事宜也常用函。
函件采用书写、复印、打印、传真等传递方式均可。
公文函格式
公函由首部、正文和尾部三部分组成。其各部分的格式、内容和写法要求如下:
(一)首部。主要包括标题、主送机关两个项目内容。
1、标题。公函的标题一般有两种形式。一种是由发文机关名称、事由和文种构成。另一种是由事由和文种构成。
2、主送机关。即受文并办理来函事项的机关单位,于文首顶格写明全称或者规范化简称,其后用冒号。
(二)正文。其结构一般由开头、主体、结尾、结语等部分组成。
1、开头。主要说明发函的缘由。一般要求概括交代发函的目的、根据、原因等内容,然后用“现将有关问题说明如下:”或“现将有关事项函复如下:”等过渡语转入下文。复函的缘由部分,一般首先引叙来文的标题、发文字号,然后再交代根据,以说明发文的缘由。
2、主体。这是函的核心内容部分,主要说明致函事项。函的事项部分内容单一,一函一事,行文要直陈其事。无论是商洽工作,询问和答复问题,还是向有关主管部门请求批准事项等,都要用简洁得体的语言把需要告诉对方的问题、意见叙写清楚。如果属于复函,还要注意答复事项的针对性和明确性。
一、公文概述
什么是公文?公文是公务文书的简称,它是一级机关在行政管理过程中为处理公务而按规定格式制作的书面材料。
公文是党组织、国家机关、企业、事业、团体、学校等在党务活动、政务活动、技术活动和经济活动等公务活动中的产物;公文还是宣布和传达政策法令、指导工作、报告和商洽国家事务的一种工具。
公文具有直接生效的指导作用。这种指导作用包括命令作用、法律作用、执行作用、指示作用、宣传作用、教育作用、交涉作用……等等。
写作公文不能离开政策和法律,必须符合党和政府的方针、政策和法规、法律。只有不断提高公文写作水平,才能不断提高办文质量,使公文发挥它的特殊的功用。
根据国务院办公厅1993年11月发布的《国家行政机关公文处理办法》规定,我国现行的国家行政机关公文分12类13种:①命令(令);②议案;③决定;④指示;⑤公告、通告;⑥通知;⑦通报;⑧报告;⑨请示; 10 批复; 11 函; 12 会议纪要。 根据中央中央办公厅1996年5月印发的《中国共产党机关公文处理条例》规定,我国现行的各级党的机关公文有14种:①决议;②决定;③指示;④意见;⑤通知;⑥通报;⑦公报;⑧报告;⑨请示; 10 批复; 11 条例; 12 规定; 13 函; 14 会议纪要。
以上两个文件是党政机关公文制发的依据,同时也成为企事业单位、社会团体、行业等选择通用公文文种的依据。当然一些专职机关,如军事、外交、经济、法律等的机构另有一些专用公文。
公文的处理程序一般包括:①收文;②分办、批办;③催办;④拟稿;⑤审核、签发;⑥编号、印发;⑦立卷(归档);⑧销毁。与写作有直接关系的是拟稿。
二、公文的格式与要素〖ht〖kh*3/4公文具有规定的格式,公文要按规定的格式写作。这样可以保证公文的完整性、准确性和程序性,并且便于公文的处理,提高办文的工作效率。
公文的格式要素一般包括:
(一)发文机关(版头)
发文机关即公文的作者,发文机关应写机关全称或规范化的简称。同级政府、政府各部门、上级政府部门与下级政府可以联合行文,各级政府及其部门与同级常委、军队、人民团体和行使行政职能的事业单位、公司也可联合行文。几个机关联合行文,应将主办机关排列在前。
版头是发文机关的标记。目前我国使用的公文版头有以下三种:
1、由发文机关全称或规范化简称加“文件”两字组成,以大字套红居中,印在文件首页上端,俗称“大版头”。例如,“浙江省人民政府文件”、“浙江省人事厅文件”。
2、由发文机关全称或规范化简称加圆括号标注文种名称,俗称“小版头”。例如,“浙江省人民政府(通知)”、“××市教育委员会(函)”。
3、印有发文机关全称的公函纸,作为版头。
至于几个机关联合行文的,可用公文主办机关一家版头,也可用所有联合行文机关的版头。 我爱编程网
(二)公文份号 〖ht公文份号是同一公文印制若干份时每份的顺序编号,位于版头左上角,用阿拉伯数字标识,用以掌握每份公文的流向。绝密、机密公文应标明份号。
(三)秘密等级 〖ht公文的秘密等级分为“绝密”、“机密”、“秘密”三种,由发文机关依据《中华人民共和国保守国家秘密法》及其《实施细则》、中央和国家各部、委、办、局制订的国家秘密及其密级具体范围的规定等确定,标注在版头左上角“公文份号”之下。其具体标识为“”,“”前标密级,后标保密期限。没有标上保密期限的,绝密、机密、秘密分别可按30年、20年、xx年认定。
(四)紧急程度
紧急程度是指对公文送达和办理速度的要求。紧急公文分为“特急”、“急”两种,标注在版头左上角“秘密等级”下。电报分别标注“特急”、“加急”。
(五)发文字号 〖ht发文字号是指发文机关编制的公文代号,简称文号。发文字号由发文机关代字、发文年度、发文顺序号三部分组成。其中发文年度用六角括号括入。如国务院1998年制发的第12号文件,发文字号为“国发〔1998〕12号”。发文字号位于版头与红线之间的正中处,用公函纸制发的,位于标题右上侧。几个机关联合发文,一般只标明主办机关发文字号。
(六)签发人签发人与签署不同。签署是某些需要以本机关行政首长名义发布的公文,由其签名或加盖签名章后才能发出。签发人则有两种情况:一是指机关负责人在审定文稿后签上姓名表示同意印发;二是报送上级机关的请示、报告,必须注明签发人。这里指的是后一种情况,签发人的姓名署于版头红线之上发文字号的右侧:“签发人:×××”。为使公文显得对称,发文字号应相应向左移位。重要的或涉及面广的,必须由正职或主持日常工作的副职领导人签发。
(七)标题
公文标题位于版头下面居中的位置,通常在版头与标题之间,用一红线作区别标志。如一份公文没有版头,标题置于公函纸首端机关名称下的红线稍下居中位置。
公文标题由发文机关名称、公文主题(事由)、文种三部分组成。例如,《国务院关于加强血吸虫病防治工作的决定》,这里“国务院”是发文机关;“关于加强血吸虫病防治工作”是事由;“决定”是文种。事由一般都用介词“关于”和表达主要内容的词组组成介词结构。
拟写公文标题时,应特别注意以下几点:
1、批转或转发公文的标题,一般由批转或转发机关名称、被批转或转发的公文标题、文种三部分组成。如《国务院批转国家土地管理局关于部分地方政府越权批地情况报告的通知》。批转和转发公文的标题,应杜绝出现介词和文种的重叠,如“关于”的“关于”,“通知”的“通知”。同时应注意,除批转法规性文件加书名号外,均不对原标题加书名号。
2、事由应简明确切地概括公文的主要内容。例如,某市人民政府对历年来制定的规范性文件进行清理,应予废止的共有几十件,发文时如将这些废止的规范性文件的标题全部列为事由,显然不可能,即使仅写一个,后加“等”字,也嫌过长,但概括为“废止部分规范性文件”,就显得既明确又简洁。
3、在拟写标题时,一定要准确选定和标明文种,不能自造文种。
4、标题排列要对称、美观,除字数较少的一行字标题外,两行以上的可排成宝塔形,也可排成长短一致的双平行形或三平行形。在转行时,不要把人名、地名、机关名称等专用名词乃至词拆开。
5、公文标题中除书名号的使用有明确规定外,一般不加标点符号。标题过长或中间需停顿的,可用空格或换行的方式表述。例如:
国务院关于依靠科技振兴农业
(八)主送机关
加强农业科技成果推广工作的决定
主送机关是发文机关要求对公文予以办理或答复的对方机关。除了直接面向社会发布的公文之外,公文一般均应在正文之前标题左下方顶格书写主送机关的名称。
确定主送机关应注意:
1、政府各部门应根据本级政府授权和职权规定,方可对下一级人民政府直接行文。
2、请示的公文,应坚持主送一个机关的原则,不能多头主送;除特殊情况外,不得越级请示。受双重领导的机关向上请示,应根据内容写明主送机关和抄送机关,由主送机关负责答复。除领导直接交办的事项外,请示不得直接送领导者个人。
3、批复下级请示,只能主送原请示机关(单位),对相关机关(单位),用抄送。
4、普发公文,主送机关应写规范化统称,如××省人民政府普发文件,主送机关写为“各市、县人民政府,各地区行政公署,省政府直属各单位”。
(九)正文
正文是公文的主体,是反映公文具体内容的部分。正文紧接主送机关之后,提行空两格书写。(写法见后)
(十)附件
附件是根据正文的需要附加的公文或材料,用以对正文作补充说明或提供参考资料。附件附于正文之后。
(十一)印章
印章是机关权力的象征。公文加印,是制文机关确认公文效力的凭证。印章盖于公文右下端落款处,上不压正文,下要骑年盖月。印章要清楚、端正。联合上报的非法规类公文,由主报机关加盖印章,但在首页要注明会签机关的签发人姓名。联合下发的公文,都应加盖印章。以行政首长名义行文的公文,前具职务,后盖签名章。 党的文件,有特定版头的普发性文件不加盖发文机关印章。这是与国家行政机关公文的一大不同。
(十二)成文时间
一般就是公文的签发日期,标注于正文右下方。联合行文的成文时间,以最后签发机关领导人的签发时间为准。会议讨论通过的公文,应以会议通过的日期为准,并写上会议名称及届次,以圆括号括入,标注于公文标题之下。
(十三)附注 〖ht附注用以说明在公文其它区域不便说明的各种事项。如需要加以解释的名词术语,或用于表示公文的阅读范围、使用方法等内容,标注于落款下另起一行空两格位置。其中阅读范围是对阅读对象的规定,还应用六角括号括入,如〔发至省军级〕、〔发至县团级〕等。
(十四)主题词 〖ht主题词是由对这一公文内容所述及的主题用规范的词加文种组成,以便日后按公文的主题和文种进行检索。制订公文主题词表,是为准确选用表中的词目提供方便,防止随意性。上报的公文,应标注上级机关公文主题词表中所规定的主题词。一件公文的主题词至少用两个,一般不超过七个。例如,《国务院关于深入开展企业扭亏增盈工作的通知》这一公文,主题词就有“企业”、“经营”、“效益”、“通知”四个。从这里也可归纳出,主题词必须正确无误地反映出公文的内容特征和归属类别,要有层次性,并且不要与标题混同。
(十五)抄送机关
民工抄送机关是指虽然不主办,但应该了解这件公文内容的有关机关。抄送机关名称应写在“主题词”后公文尾部的两条等长平行细实线内。
(十六)印发机关和时间
印发机关,为发文机关的办公部门;印发时间,一般为印刷时间,放在抄送机关细实线下。
以上的公文格式要素在一份公文中要根据规定,合理安排,以示公文的严肃性。随着办公自动化的逐步实现,格式要素和编排更为严格规范,同时还将新增一些格式构成要素。
三、公文正文的'写作方法
草拟公文正文必须符合以下要求:
(一)符合国家的法律、法规、规章,符合党和国家的方针、政策及有关规定。如提出新的政策规定,就要切实可行,并需另纸加以说明。
(二)情况确实,观点明确,条理清楚,层次分明,文字精练,书写工整,标点准确,篇幅力求简短。
(三)人名、地名、数字、引文准确。时间应写具体的年月日,如“1994年”不能写成“94年”。
(四)公文中的数字,在坚持同一公文中保持数字使用前后一致的前提下,除成文时间、部分结构层次序数和词、词组、惯用语、缩略语、具有修辞色彩语句中作为词素的数字必须使用汉字外,都要使用阿拉伯数字。
(五)结构层次序数,依次为“一”、“(一)”、“1”、“(1)”。
(六)公文中应使用国家法定计量单位。
(七)引用公文,应先引标题,后引发文字号,并加圆括号。
(八)用词准确、规范。使用简称时,一般应先用全称,并注明简称。
(九)请示的公文应一文一事,报告中不得夹带请示事项。
公文正文的写法主要有两条: 第一、通过叙述、说理表明目的。
公文的行文分上行文、平行文、下行文三种。不管是哪一种,公文的正文一般是分叙事、说理、目的(或结论)三个方面来写的。叙事是摆事实,说理是讲道理,目的(或结论)是指要求对方做的事,或是对某一事项所作的结论。应该通过叙述,说理表明目的。具体来说:
(一)向上级机关写请示性的公文,一般先叙述情况,再提自己的看法,最后提出要求,请上级机关审批。
(二)写陈述性的公文,一般是先陈述情况,再写做法,最后请领导机关或请上级对下一步做法给予指示。
(三)向平级机关写商洽性的公文,常常是先提出因为什么事情,再根据什么规定,最后请示协助解决所要解决的问题。
(四)向下级机关发布指示性的公文,通常是先写根据什么情况,再提应该怎样解决,最后提出具体办法,要求下级贯彻执行。
(五)写复文(对下级请示的公文的批复),一般先根据来文所要求解决的事项,再写明审核的意见,最后要求下级按批复执行。
通过叙事、说理来表明目的,就是要深入调查,真正掌握情况,进行分析、研究,使理由充足、观点正确,提出的目的既考虑到实际的需要,也考虑到可能性。因此,材料必须真实可靠,论据确凿,说理符合政策、方针,又有的放矢,实事求是。这样,公文的目的就既明确又具体。
第二、文字表达简明、确切、条理清楚。
简明,是指简洁、明确。公文除综合性报告外,采取的是一文一事制。写作时,应反复地、认真地压缩文字,去掉可有可无的空话。较长的公文也应“开门见山”。同时,公文比一般文章对明确的要求更为严格。它的用语以语体文为原则,力求通俗,能说明问题。不准使用自造的简体字。它的语言必须符合语法,还要正确地使用标点符号。 确切,是指准确、贴切。公文必须符合准确性的原则,运用概念、判断、推理要合乎逻辑。表达上既重视内容的正确性,也不忽视形式的准确性。从内容到形式,从篇章结构到用词造句,都要与主题高度均衡、统一。
条理清楚,是指公文的布局和其它文章同样重要。一切较长的公文,均应开门见山,首先提出要点,即于开端处,先用极简要文句,说明全文的目的或结论(新闻学上称为“导语”,亦即中国古人所谓“立片言以居要,乃一篇之警策”),唤起阅者注意,使阅者脑子里先得一个总概念,不得不继续看下去。然后,再作必要的解释。长的公文分为几段时,每段亦应采取此法。一份公文有几层意思或几项要求时,必须注意条理,分清层次,以数目字标明段落和项目。这样就可以使公文的正文做到纲举目张,条理分明。
构造函数
PHP5允行开发者在一个类中定义一个方法作为构造函数。具有构造函数的类会在每次创建对象时先调用此方法,所以非常适合在使用对象之前做一些初始化工作。
注意:
如果子类中定义了构造函数则不会暗中调用其父类的构造函数。要执行父类的构造函数,需要在子类的构造函数中调用parent::__construct()。(??和其他语言明显不同??)
例10.8.使用新标准的构造函数
classBaseClass{
function__construct(){
print"InBaseClassconstructorn";
}
}
classSubClassextendsBaseClass{
function__construct(){
parent::__construct();
print"InSubClassconstructorn";
}
}
$obj=newBaseClass();
$obj=newSubClass();
为了实现向后兼容性,如果PHP5在类中找不到__construct()函数,它就会尝试寻找旧式的构造函数,也就是和类同名的函数。因此唯一会产生兼容性问题的情况是:类中已有一个名为__construct()的方法,但它却又不是构造函数。
析构函数
PHP5引入了析构函数的概念,这类似于其它面向对象的语言,如C++。析构函数会在到某个对象的所有引用都被删除或者当对象被显式销毁时执行。
例10.9.析构函数示例
classMyDestructableClass{
function__construct(){
print"Inconstructorn";
$this->name="MyDestructableClass";
}
function__destruct(){
print"Destroying".$this->name."n";
}
}
$obj=newMyDestructableClass();
和构造函数一样,父类的析构函数不会被引擎暗中调用。要执行父类的析构函数,必须在子类的析构函数体中显式调用parent::__destruct()。(??和其他语言明显不同??)
注意:
析构函数在脚本关闭时调用,此时所有的头信息已经发出。
注意:
试图在析构函数中抛出一个异常会导致致命错误。
第1章 PHP概述 001
1.1 什么是PHP 002
1.2 PHP开发语言的特点 002
1.3 PHP的发展趋势 003
1.4 如何学好PHP 004
1.5 PHP的语法结构 005
1.5.1 PHP标识符的规则 005
1.5.2 PHP标记符的作用 005
1.6 程序注释 006
1.6.1 使用PHP注释 006
1.6.2 使用HTML注释 007
1.6.3 有效使用注释 007
1.7 PHP输出指令 008
1.7.1 应用print()语句输出字符 008
1.7.2 应用echo()语句输出字符 009
1.7.3 应用printf()语句格式化输出字符 010
1.7.4 应用sprintf()语句格式化输出字符 011
1.8 PHP包含语句 011
1.8.1 应用include()语句包含文件 011
1.8.2 应用require()语句包含文件 012
1.8.3 应用include_once()语句包含文件 013
1.8.4 应用require_once()语句包含文件 013
1.8.5 include()语句和require()语句的区别 014
1.8.6 include_once()语句和require_once()语句的区别 016
1.9 PHP动态网页的工作流程 016
1.10 体验PHP——编写第1个PHP Web 016
1.10.1 创建站点 016
1.10.2 使用Dreamweaver创建PHP文件 017
1.10.3 创建PHP标记 017
1.10.4 编写PHP代码 017
1.10.5 存储文件 018
1.10.6 网站运行结果 018
1.11 获取帮助信息 018
1.11.1 PHP学习工具和资料下载 019
1.11.2 获取PHP的源代码资源 019
1.12 本章小结 020
第2章 PHP环境的安装与配置 021
2.1 Windows下应用AppServ快速配置PHP开发环境 022
2.2 Windows下Apache+MySQL+PHP的安装配置 024
2.2.1 Windows下Apache的安装配置 024
2.2.2 Windows下MySQL的安装配置 027
2.2.3 Windows下PHP的安装配置 028
2.3 在Windows下架设IIS+PHP的执行环境 029
2.3.1 IIS的安装 030
2.3.2 架设PHP到IIS 030
2.4 Linux下Apache+MySQL+PHP的安装配置 032
2.4.1 Linux下Apache的安装配置 032
2.4.2 Linux下MySQL的安装配置 033
2.4.3 Linux下PHP的安装配置 034
2.5 获取PHP的配置信息 035
2.5.1 Apache服务器的基本配置 035
2.5.2 php.ini文件的基本配置 035
2.6 解决PHP的常见配置问题 037
2.6.1 解决Apache服务器端口冲突 037
2.6.2 更改Apache服务器默认存储的文件路径 037
2.6.3 在php.ini文件中更改上传文件的大小 037
2.6.4 增加PHP扩展模块 038
2.6.5 修改php.ini文件以支持MySQL数据库 038
2.7 本章小结 038
第3章 PHP语言基础 039
3.1 PHP常量 040
3.1.1 声明和使用常量 040
3.1.2 预定义常量 041
3.2 PHP变量 042
3.2.1 理解变量 042
3.2.2 声明变量 043
3.2.3 变量作用域 043
3.2.4 可变变量 045
3.2.5 预定义变量 045
3.2.6 变量的生存周期 046
3.3 数据类型 046
3.3.1 标量数据类型 046
3.3.2 复合数据类型 050
3.3.3 特殊数据类型 051
3.3.4 转换数据类型 052
3.3.5 检测数据类型 053
3.4 PHP的运算符 054
3.4.1 操作算术运算符 054
3.4.2 操作字符串运算符 055
3.4.3 操作赋值运算符 055
3.4.4 操作位运算符 056
3.4.5 递增或递减运算符 056
3.4.6 操作逻辑运算符 057
3.4.7 操作比较运算符 058
3.4.8 其他运算符 059
3.4.9 运算符的使用规则 059
3.5 PHP的表达式 060
3.6 自定义函数 061
3.6.1 定义和调用函数 061
3.6.2 在函数间传递参数 062
3.6.3 函数的返回值 063
3.7 本章小结 064
第4章 流程控制语句 065
4.1 算法 066
4.1.1 什么是算法 066
4.1.2 算法的描述方法 066
4.1.3 程序的3种控制结构 067
4.2 条件控制语句 068
4.2.1 if条件控制语句 068
4.2.2 switch多分支语句 070
4.2.3 if和switch语句的区别 072
4.3 循环语句 074
4.3.1 while循环语句 074
4.3.2 do...while循环语句 076
4.3.3 for循环语句 077
4.3.4 foreach循环语句 078
4.3.5 各循环语句间的区别 079
4.4 跳转语句 080
4.4.1 break跳转语句 080
4.4.2 continue跳转语句 081
4.4.3 return跳转语句 082
4.5 try…catch…throw语句 083
4.6 流程控制语句的嵌套 083
4.7 本章小结 084
第5章 PHP与Web页面交互 085
5.1 表单数据的提交方式 086
5.1.1 通过GET方法提交数据 086
5.1.2 通过POST方法提交数据 087
5.2 获取提交的表单数据 088
5.2.1 获取按钮的数据 088
5.2.2 获取文本区域的数据 089
5.2.3 获取单选按钮的数据 090
5.2.4 获取复选框的数据 091
5.2.5 获取列表框的数据 092
5.2.6 获取文本域的数据 093
5.2.7 获取文件域的数据 094
5.2.8 获取隐藏域的数据 094
5.3 在PHP中处理表单变量 095
5.4 对表单传递的变量值进行编码与解码 096
5.4.1 URL编码与解码 096
5.4.2 BASE64编码与解码 097
5.5 本章小节 098
第6章 字符串操作 099
6.1 字符串简介 100
6.2 单引号和双引号的区别 100
6.3 字符串的连接符 101
6.4 字符串操作 101
6.4.1 去除字符串首尾空格和特殊字符 101
6.4.2 字符串与HTML相互转换 103
6.4.3 转义、还原字符串数据 104
6.4.4 获取字符串的长度 106
6.4.5 截取字符串 107
6.4.6 比较字符串 108
6.4.7 检索字符串 111
6.4.8 替换字符串 113
6.4.9 格式化字符串 116
6.4.10 连接、分割字符串 117
6.4.11 URL编码解码函数 119
6.5 本章小结 121
第7章 正则表达式 122
7.1 什么是正则表达式 123
7.1.1 正则表达式的发展史 123
7.1.2 正则表达式中的术语 123
7.2 正则表达式的语法规则 123
7.2.1 行定位符(^和$) 124
7.2.2 单词定界符(\b、\B) 125
7.2.3 字符类([ ]) 125
7.2.4 选择字符(|) 126
7.2.5 连字符(-) 127
7.2.6 排除字符([^]) 127
7.2.7 限定符(? * + {n,m}) 127
7.2.8 点号字符(.) 128
7.2.9 转义字符(\) 128
7.2.10 反斜线(\) 128
7.2.11 括号字符(()) 129
7.2.12 反向引用 130
7.2.13 捕获 130
7.2.14 断言(环视) 130
7.2.15 模式修饰符 131
7.2.16 模式匹配的顺序 131
7.3 POSIX扩展正则表达式函数 132
7.3.1 ereg()函数和eregi()函数 132
7.3.2 ereg_replace()函数和eregi_replace()函数 133
7.3.3 split()函数和spliti()函数 134
7.4 PCRE兼容正则表达式函数 135
7.4.1 preg_grep()函数 135
7.4.2 preg_match()函数和preg_match_all()函数 135
7.4.3 preg_quote()函数 137
7.4.4 preg_replace()函数 137
7.4.5 preg_replace_callback()函数 137
7.4.6 preg_split()函数 138
7.5 本章小结 138
第8章 PHP数组 139
8.1 数组的概述 140
8.2 数组的基本操作 140
8.2.1 声明数组 140
8.2.2 输出数组 141
8.2.3 定位数组 141
8.2.4 遍历数组 143
8.2.5 增加、删除数组元素 147
8.2.6 确定数组大小和惟一性 149
8.2.7 数组的排序 150
8.2.8 数组的合并与拆分 151
8.2.9 数组和字符串之间的转换 154
8.3 其他数组函数 155
8.3.1 创建指定范围的数组 155
8.3.2 对数组中的元素进行随机排序 156
8.3.3 对数组中所有元素进行求和 156
8.3.4 将一维数组拆分为多维数组 157
8.4 PHP全局数组 158
8.4.1 $_SERVER[ ]全局数组 158
8.4.2 $_GET[ ]和$_POST[ ]全局数组 158
8.4.3 $_COOKIE全局数组 158
8.4.4 $_ENV[ ]全局数组 158
8.4.5 $_REQUEST[ ]全局数组 158
8.4.6 $_SESSION[ ]全局数组 158
8.4.7 $_FILES[ ]全局数组 159
8.5 本章小结 160
第9章 日期和时间 161
9.1 日期和时间的概述 162
9.2 处理日期和时间 162
9.2.1 获取日期和时间 163
9.2.2 获取日期和时间信息 164
9.2.3 检验日期和时间的有效性 165
9.2.4 输出格式化的日期和时间 166
9.3 PHP的时间戳 168
9.3.1 PHP中的时间戳 168
9.3.2 获取格林威治标准时间的时间戳 168
9.3.3 获取本地化时间戳 169
9.3.4 获取当前时间戳 171
9.4 本章小结 171
第10章 文件和目录处理技术 172
10.1 文件处理技术的基本操作 173
10.1.1 打开文件 173
10.1.2 读取文件 173
10.1.3 写入文件 178
10.1.4 删除文件 179
10.1.5 关闭文件 179
10.1.6 复制文件 179
10.1.7 移动和重命名文件 180
10.2 文件的高级处理技术 180
10.2.1 访问远程文件 181
10.2.2 测试文件指针的位置 181
10.2.3 文件指针的定位 181
10.2.4 锁定文件 183
10.3 目录操作技术 183
10.3.1 打开目录 183
10.3.2 读取目录 183
10.3.3 建立目录 184
10.3.4 删除目录 184
10.3.5 改变目录 185
10.3.6 关闭目录 185
10.4 文件上传和下载技术 185
10.4.1 开启PHP文件上传功能 185
10.4.2 POST方法上传文件 186
10.4.3 上传多个文件 187
10.4.4 生成临时文件 188
10.4.5 下载文件 188
10.5 本章小结 189
第11章 图形图像处理技术 190
11.1 GD函数库的概述 191
11.1.1 Windows下打开GD2函数库支持 191
11.1.2 Linux下打开GD2函数库支持 191
11.1.3 应用GD2函数创建图像 192
11.2 基本的图像处理技术 193
11.2.1 创建画布 193
11.2.2 设置颜色 193
11.2.3 生成图像 194
11.2.4 销毁图像 195
11.2.5 绘制点与线 195
11.2.6 绘制几何图形 197
11.2.7 填充几何图形 198
11.2.8 输出文字 201
11.3 Jpgraph的安装与配置 203
11.3.1 Jpgraph的安装 204
11.3.2 Jpgraph的配置 204
11.4 图形图像的典型应用 204
11.4.1 应用图像处理技术生成验证码 204
11.4.2 应用图像处理技术生成饼形图 206
11.4.3 应用柱形图统计商品月销量 208
11.4.4 应用折线图分析学习PHP的过程 209
11.5 本章小结 210
第12章 Cookie和会话控制 211
12.1 概述 212
12.1.1 Cookie概述 212
12.1.2 会话控制 212
12.2 Cookie的操作 212
12.2.1 设置Cookie 212
12.2.2 访问Cookie 213
12.2.3 删除Cookie 213
12.2.4 Cookie数组 214
12.3 Cookie的应用 215
12.4 会话的操作 216
12.4.1 会话的基本方式 216
12.4.2 配置PHP的会话 217
12.4.3 创建会话 217
12.5 会话的应用 219
12.5.1 登录验证 219
12.5.2 通过Session禁用页面刷新 221
12.6 本章小结 222
第13章 面向对象 223
13.1 概述 224
13.1.1 面向对象的概念 224
13.1.2 面向对象语言的3大特点 224
13.1.3 PHP 5.0面向对象的新特性 225
13.2 类和对象 225
13.2.1 类的结构及声明方式 225
13.2.2 属性和方法的定义 225
13.2.3 使用构造函数 226
13.2.4 使用析构函数 227
13.2.5 类的实例化 227
13.3 控制访问权限 228
13.4 类的继承和重载 228
13.4.1 继承的概念 228
13.4.2 PHP中实现继承的方法 228
13.4.3 重载的概念 229
13.4.4 PHP中实现类重载的方法 229
13.4.5 用final关键字对继承和重载进行限制 229
13.5 接口 230
13.5.1 接口的概念 230
13.5.2 PHP实现接口 230
13.6 PHP面向对象新特性 231
13.6.1 Per-Class常量的应用 231
13.6.2 对象的克隆 231
13.6.3 __autoload()方法 232
13.6.4 使用instanceof关键字判断实例类型 232
13.6.5 使用this关键字调用类成员 232
13.6.6 使用parent关键字调用父类成员 233
13.6.7 使用self关键字调用类体中的静态成员 233
13.6.8 辅助函数 234
13.7 PHP中面向对象的应用 238
13.7.1 应用面向对象的方式实现用户身份验证 238
13.7.2 数据的分页显示 239
13.8 本章小结 241
第14章 MySQL数据库基础 242
14.1 MySQL概述 243
14.1.1 MySQL的特点 243
14.1.2 SQL和MySQL 243
14.2 MySQL服务器的启动和关闭 244
14.2.1 启动MySQL服务器 244
14.2.2 连接MySQL服务器 245
14.2.3 关闭MySQL服务器 245
14.3 操作数据库 246
14.3.1 创建数据库 246
14.3.2 选择数据库 247
14.3.3 删除数据库 247
14.4 操作数据表 247
14.4.1 创建表 248
14.4.2 修改表 249
14.4.3 删除表 249
14.5 操作数据 250
14.5.1 添加语句(INSERT) 250
14.5.2 修改语句(UPDATE) 251
14.5.3 删除语句(DELETE) 251
14.5.4 批量增加记录语句(LOAD DATA和MYSQLIMPORT) 251
14.6 数据查询语句 252
14.6.1 运用SELECT查询(对数据表的选择) 252
14.6.2 WHERE条件语句的应用 253
14.6.3 GROUP BY 对结果分组 254
14.6.4 DISTINCT在结果中去除重复行 254
14.6.5 ORDER BY对结果排序 254
14.6.6 LIKE应用 255
14.6.7 CONCAT联合多列 255
14.6.8 LIMIT限定结果行数 256
14.6.9 使用函数和表达式 256
14.7 数据类型 257
14.7.1 数字类型 257
14.7.2 字符串类型 258
14.7.3 日期和时间数据类型 259
14.8 PhpMyAdmin图形化管理工具 260
14.8.1 库级操作 260
14.8.2 表级操作 261
14.8.3 增删改数据 262
14.8.4 查询数据 263
14.8.5 数据的导入与导出 264
14.9 本章小结 266
第15章 数据库编程技术 267
15.1 PHP操纵MySQL数据库 268
15.1.1 建立与MySQL数据库的连接 268
15.1.2 选择和使用MySQL数据库 268
15.1.3 执行SQL指令 269
15.1.4 分析结果集 269
15.1.5 断开与MySQL数据库的连接 270
15.2 管理MySQL数据库中的数据 271
15.2.1 向数据库中添加数据 271
15.2.2 编辑数据库数据 272
15.2.3 从数据库中删除数据 274
15.2.4 批量数据操作 276
15.3 对MySQL表的查询 277
15.3.1 通用查询 277
15.3.2 高级查询 279
15.3.3 分组统计 280
15.3.4 对查询结果分页显示 282
15.3.5 对查询结果进行跳转分页显示 283
15.4 数据备份和恢复 286
15.5 本章小结 288
第16章 PHP的字符编码 289
16.1 了解网页字符编码 290
16.1.1 ASCII 字符集 290
16.1.2 ISO 8859 字符集 290
16.1.3 GB2312与GBK编码 290
16.1.4 Unicode字符集 291
16.1.5 UTF-8编码 291
16.2 PHP网页的字符编码 292
16.2.1 正确使用文件编码 292
16.2.2 编码转换 293
16.2.3 检测字符串的编码 294
16.2.4 字符编码的优先级 294
16.2.5 乱码产生的根源和解决方案 295
16.3 PHP开发中的中文编码问题 295
16.3.1 数据库中的字符集编码问题 295
16.3.2 解决页面中的乱码问题 296
16.3.3 通过PHP自定义函数无乱码截取中文字符串 298
16.4 PHP的区域化设置 300
16.4.1 PHP网页的区域化 301
16.4.2 使用setlocale()函数设置区域化 302
16.5 本章小节 302
第17章 PHP的调试与异常处理 303
17.1 基本调试策略 304
17.2 常见错误分析 304
17.2.1 语法错误 304
17.2.2 语义错误 307
17.2.3 注释错误 307
17.2.4 运行错误 308
17.2.5 逻辑错误 310
17.3 PHP.INI中的错误处理设置 310
17.4 错误处理 312
17.4.1 错误的隐藏 312
17.4.2 错误的定制 312
17.4.3 超时错误的处理 313
17.5 程序调试 313
17.5.1 应用DIE语句调试 313
17.5.2 应用PRINT语句调试 314
17.5.3 应用MySQL_error语句输出错误信息 315
17.6 MySQL的常见错误 316
17.6.1 PHP与MySQL连接错误 316
17.6.2 解决数据库乱码问题 317
17.6.3 上传二进制数据到数据库失败 317
17.7 本章小结 319
第18章 PHP与XML的网络开发 320
18.1 XML的概述 321
18.2 XML语法 321
18.2.1 XML文档结构 321
18.2.2 XML声明 321
18.2.3 处理指令 322
18.2.4 XML注释 322
18.2.5 XML元素 322
18.2.6 XML属性 323
18.2.7 使用CDATA标记 323
18.2.8 XML命名空间 324
18.3 在PHP中创建XML文档 324
18.4 通过DOM操作XML文档 325
18.4.1 通过DOM类库创建XML文档 325
18.4.2 通过getElementsByTagName()方法读取XML 327
18.4.3 通过DOM类库向XML中添加数据 328
18.4.4 通过Xpath查询XML中的数据 330
18.4.5 通过replaceChild()方法修改XML文档 331
18.4.6 通过removeChild()方法删除XML文档 334
18.5 本章小结 335
第19章 Smarty模板技术 336
19.1 Smarty简介 337
19.1.1 什么是Smarty 337
19.1.2 Smarty与MVC 337
19.1.3 Smarty的特点 337
19.2 Smarty的安装配置 337
19.2.1 Smarty下载与安装 337
19.2.2 第1个Smarty程序 338
19.2.3 配置Smarty 339
19.3 Smarty模板设计 340
19.3.1 Smarty模板文件 340
19.3.2 注释 340
19.3.3 变量 340
19.3.4 修饰变量(variable modifers) 343
19.3.5 内建函数 344
19.3.6 自定义函数 349
19.4 Smarty程序设计 351
19.4.1 Smarty中的常用方法 352
19.4.2 Smarty的配置变量 353
19.4.3 Smarty缓存 354
19.5 本章小结 354
第20章 注册和登录 355
20.1 设计思路 356
20.1.1 功能阐述 356
20.1.2 程序业务流程 356
20.1.3 文件组织结构 356
20.2 数据库设计 357
20.3 连接数据库 358
20.3.1 关键函数 358
20.3.2 功能实现 359
20.4 用户注册模块 359
20.4.1 关键函数 359
20.4.2 页面设计 360
20.4.3 功能实现 361
20.5 检测用户是否被占用 362
20.5.1 关键函数 362
20.5.2 页面设计 363
20.5.3 功能实现 364
20.6 验证用户注册信息是否合法 365
20.6.1 关键函数 365
20.6.2 功能实现 365
20.7 用户登录 366
20.7.1 关键函数 366
20.7.2 页面设计 367
20.7.3 功能实现 368
20.8 图片验证码功能 369
20.8.1 关键函数介绍 369
20.8.2 页面设计 371
20.8.3 功能实现 371
20.9 退出登录功能 372
20.9.1 关键函数 372
20.9.2 功能实现 372
20.10 本章小节 372
第21章 留言本 373
21.1 设计思路 374
21.1.1 功能阐述 374
21.1.2 程序业务流程 374
21.1.3 文件组织结构 375
21.2 数据库设计 376
21.3 连接数据库 377
21.3.1 关键函数介绍 377
21.3.2 功能实现 377
21.4 添加留言模块 378
21.4.1 关键函数 378
21.4.2 页面设计 378
21.4.3 功能实现 380
21.5 查看留言模块 381
21.5.1 关键函数 381
21.5.2 页面设计 381
21.5.3 功能实现 381
21.6 修改留言模块 383
21.6.1 关键函数 383
21.6.2 页面设计 384
21.6.3 功能实现 385
21.7 删除留言模块 386
21.7.1 关键函数 386
21.7.2 页面设计 386
21.7.3 功能实现 387
21.8 查询留言模块 388
21.8.1 关键函数 388
21.8.2 页面设计 388
21.8.3 功能实现 389
21.9 本章小结 390
第22章 电子商务 391
22.1 需求分析 392
22.2 系统分析和设计 392
22.2.1 可行性分析 392
22.2.2 功能结构分析和设计 392
22.2.3 系统流程概述 393
22.2.4 开发环境 394
22.3 数据库设计 394
22.3.1 数据库的分析 395
22.3.2 创建数据库 395
22.3.3 创建数据表 395
22.3.4 数据表的结构 395
22.4 技术准备 398
22.4.1 代码书写规则 398
22.4.2 网站架设之初 398
22.4.3 文件管理规划 399
22.5 前台开发 399
22.5.1 设计分析 399
22.5.2 前台首页的实现 399
22.5.3 商品展示模块的实现 402
22.5.4 购物车的实现 405
22.5.5 收银台的实现 408
22.5.6 用户登录模块的实现 409
22.5.7 本站公告模块的实现 417
22.6 后台开发 418
22.6.1 设计分析 418
22.6.2 后台首页 418
22.6.3 后台登录模块 420
22.6.4 商品信息管理模块 422
22.6.5 短信管理模块 426
22.6.6 订单信息管理模块 428
22.7 电子商务完整清单 431
22.8 本章小结 432
第23章 播客 433
23.1 了解播客 434
23.1.1 播客起源 434
23.1.2 播客的发展前景 434
23.2 系统设计 435
23.2.1 系统功能概述 435
23.2.2 系统功能结构 435
23.2.3 系统流程概述 436
23.2.4 开发环境 437
23.2.5 文件夹组织结构 437
23.3 Adodb类库的安装配置 437
23.4 数据库设计 438
23.4.1 数据库的分析 438
23.4.2 创建数据库 438
23.4.3 创建数据表 438
23.5 前台开发 439
23.5.1 设计分析 439
23.5.2 在线播放功能的实现 440
23.5.3 最新推出功能的实现 448
23.5.4 上传视频文件功能的实现 450
23.5.5 视频下载功能的实现 452
23.5.6 创建播客个人主页 453
23.5.7 站内订阅 457
23.5.8 订阅管理 458
23.6 后台开发 462
23.6.1 设计分析 462
23.6.2 上传视频管理功能的实现 463
23.6.3 动态创建视频文件类型 465
23.6.4 管理员管理 466
23.7 本章小结 468
附录 实例快速检索 469
我爱编程网(https://www.52biancheng.com)小编还为大家带来PHP学习手册的目 录的相关内容。
第一篇 基础篇
第1章 了解PHP 18
1.1 什么是PHP 19
1.2 选择PHP的理由 19
1.3 如何学好编程 22
1.4 准备PHP的开发条件 24
1.4.1 下载PHP及相关软件 24
1.4.2 代码编辑工具 24
1.4.3 下载PHP用户手册 26
1.5 本章小结 26
第2章 准备开发PHP的条件 27
2.1 AppServ—Windows版PHP集成化安装包 28
2.1.1 用AppServ搭建PHP开发环境 28
2.1.2 测试AppServ是否安装成功 30
2.2 XAMPP—Linux版PHP集成化安装包 31
2.2.1 用XAMPP搭建PHP开发环境 32
2.2.2 在Linux操作系统下启动、停止XAMPP 33
2.2.3 设置Linux版XAMPP中MySQL数据库root用户的密码 33
2.2.4 在Linux操作系统下编写第一个PHP程序 33
2.3 PHP开发环境的关键配置信息 34
2.3.1 Apache服务器的基本配置 34
2.3.2 PHP.INI文件的基本配置 35
2.4 解决PHP的常见配置问题 36
2.4.1 解决Apache服务器端口冲突 36
2.4.2 更改Apache服务器
默认存储的文件路径 36
2.4.3 在PHP.INI文件中更改上传文件的大小 37
2.4.4 增加PHP扩展模块 37
2.4.5 检测PHP是否支持MySQL数据库 38
2.5 Dreamweaver开发工具 38
2.5.1 情景应用一——Dreamweaver中编码格式的选择 38
2.5.2 情景应用二——Dreamweaver创建表格 39
2.5.3 情景应用三——Dreamweaver创建表单 43
2.5.4 情景应用四——Dreamweaver创建站点 45
2.5.5 情景应用五——Dreamweaver创建第一个PHP程序 46
2.6 本章小结 47
第3章 了解Web页面的设计 48
3.1 XHTML基础 49
3.1.1 XHTML语言的语法 49
3.1.2 XHTML文件的结构 51
3.1.3 编辑文字版面 53
3.1.4 插入图像与链接 55
3.1.5 编写XHTML表格 57
3.1.6 设计XHTML表单 58
3.1.7 情景应用一——编写用户注册信息页 61
3.1.8 情景应用二:文件域上传文件 62
3.2 CSS样式应用 63
3.2.1 将CSS样式嵌入到HTML中 63
3.2.2 CSS选择符 65
3.2.3 常见的CSS样式属性 67
3.2.4 情景应用——打造经典的导航栏 72
3.3 设计页面布局 74
3.3.1 <div>和<span>标记 74
3.3.2 区块模型 74
3.3.3 区块浮动 75
3.3.4 情景应用——设置一行两列浮动布局 77
3.4 实战练习 78
3.4.1 CSS+DIV设计网站首页 78
3.4.2 DIV标签设计论坛后台管理页面 79
3.5 本章小结 81
第4章 PHP开发基础 82
4.1 PHP的工作原理 83
4.2 学习运用代码注释 83
4.2.1 使用PHP注释 84
4.2.2 使用HTML注释 84
4.2.3 有效使用注释 85
4.3 PHP的常量应用 85
4.3.1 声明和使用常量 85
4.3.2 预定义常量 87
4.4 PHP的变量应用 88
4.4.1 理解变量 88
4.4.2 声明变量 88
4.4.3 变量作用域 89
4.4.4 可变变量 91
4.5 PHP的数据类型 92
4.5.1 标量数据类型 92
4.5.2 复合数据类型 96
4.5.3 特殊数据类型 97
4.5.4 转换数据类型 98
4.5.5 检测数据类型 100
4.6 PHP的运算符 101
4.6.1 算术运算符 101
4.6.2 字符串运算符 102
4.6.3 赋值运算符 102
4.6.4 位运算符 103
4.6.5 递增或递减运算符 103
4.6.6 逻辑运算符 104
4.6.7 比较运算符 105
4.6.8 三元运算符 105
4.6.9 运算符的使用规则 106
4.7 PHP的自定义函数 107
4.7.1 定义和调用函数 108
4.7.2 在函数间传递参数 109
4.7.3 函数的返回值 110
4.8 实战练习 111
4.8.1 网站中最新动态模块的中文字符串截取 111
4.8.2 论坛发布内容模块中对内容的格式化输出 112
4.9 本章小结 113
第5章 PHP流程控制语句 115
5.1 程序三种控制结构 116
5.1.1 顺序结构 116
5.1.2 选择(分支)结构 116
5.1.3 循环结构 116
5.2 条件控制语句 117
5.2.1 if条件控制语句 117
5.2.2 switch多分支语句 119
5.2.3 情景应用一——if语句判断美女征婚条件 121
5.2.4 情景应用二——switch网页框架 122
5.3 循环控制语句 123
5.3.1 while循环语句 124
5.3.2 do...while循环语句 124
5.3.3 for循环语句 125
5.3.4 foreach循环语句 127
5.3.5 情景应用一——while语句循环读取数据库中数据 128
5.3.6 情景应用二——for循环语句开发一个乘法口诀表 129
5.4 跳转语句 130
5.4.1 break跳转语句 130
5.4.2 continue跳转语句 131
5.4.3 return跳转语句 132
5.5 包含语句 133
5.5.1 include()语句 133
5.5.2 require()语句 134
5.5.3 include_once()语句 135
5.5.4 require_once()语句 135
5.5.5 include()语句和require()语句的区别 136
5.5.6 include_once()语句和require_once()语句的区别 138
5.6 实战练习 138
5.6.1 删除数据库中指定的数据表 138
5.6.2 for循环语句实现多图片上传 139
5.7 本章小结 140
第6章 字符串操作 141
6.1 初识字符串 142
6.2 转义、还原字符串 142
6.3 截取字符串 143
6.4 分割、合成字符串 145
6.5 替换字符串 146
6.5.1 str_ireplace()函数 146
6.5.2 substr_replace()函数 148
6.6 检索字符串 148
6.6.1 strstr()函数 148
6.6.2 substr_count()函数 149
6.7 去掉字符串首尾空格和特殊字符 150
6.7.1 ltrim()函数 150
6.7.2 rtrim()函数 151
6.7.3 trim()函数 152
6.8 字符串与HTML转换 152
6.9 情景应用 154
6.9.1 超长文本的分页输出 154
6.9.2 查询关键字描红 155
6.9.3 购物车中数据的读取 156
6.10 实战练习 157
6.10.1 PHP 5新型字符串输出XML数据信息 157
6.10.2 图像验证码的相关操作 158
6.11 本章小结 159
第7章 正则表达式 160
7.1 什么是正则表达式 161
7.2 正则表达式的语法规则 162
7.2.1 行定位符(^和$) 162
7.2.2 单词定界符(\b、\B) 162
7.2.3 字符类([ ]) 163
7.2.4 选择字符(|) 163
7.2.5 连字符(-) 163
7.2.6 排除字符([^]) 164
7.2.7 限定符(? * + {n,m}) 164
7.2.8 点号字符(.) 164
7.2.9 转义字符(\) 165
7.2.10 反斜线(\) 165
7.2.11 括号字符(()) 166
7.2.12 情景应用一——整合实用的正则表达式 166
7.2.13 情景应用二——调用正则表达式验证中文 168
7.3 PCRE兼容正则表达式函数 169
7.3.1 字符串的匹配与查找 169
7.3.2 情景应用一——应用正则表达式匹配电话号码格式 170
7.3.3 字符串的替换 172
7.3.4 情景应用二——应用正则表达式实现UBB使用帮助 173
7.3.5 字符串的分割 173
7.4 实战练习 174
7.4.1 正则表达式验证用户
7.4.1 注册信息的合理性 174
7.4.2 正则表达式验证提交的
7.4.1 购买数量是否是正整数 176
7.5 本章小结 177
第8章 初探数组 178
8.1 数组概述 179
8.2 数组类型 179
8.3 声明数组 180
8.3.1 用户创建数组 180
8.3.2 函数创建数组 181
8.3.3 创建二维数组 181
8.4 遍历、输出数组 182
8.4.1 遍历数组 183
8.4.2 输出数组元素 184
8.5 PHP的数组函数 185
8.5.1 统计数组元素个数 185
8.5.2 向数组中添加元素 185
8.5.3 获取数组中最后一个元素 186
8.5.4 删除数组中重复元素 186
8.5.5 获取数组中指定元素的键名 186
8.5.6 字符串与数组的转换 187
8.5.7 情景应用——读取网上调查中的数据 188
8.6 PHP的全局数组 189
8.6.1 $_SERVER[ ]全局数组 189
8.6.2 $_GET[ ]和$_POST[ ]全局数组 190
8.6.3 $_COOKIE全局数组 190
8.6.4 $_ENV[ ]全局数组 191
8.6.5 $_REQUEST[ ]全局数组 191
8.6.6 $_SESSION[ ]全局数组 191
8.6.7 $_FILES[ ]全局数组 191
8.6.8 情景应用——$_FILES[ ]全局数组在文件上传中的应用 191
8.7 实战练习 193
8.7.1 生成在线考试题 193
8.7.2 通过获取客户端IP地址限制投票次数 193
8.8 本章小结 195
第9章 日期与时间 196
9.1 PHP的时间观念 197
9.1.1 在PHP.INI文件中设置时区 197
9.1.2 通过date_default_timezone_set函数设置时区 197
9.2 UNIX时间戳 198
9.2.1 获取任意日期、时间的时间戳 198
9.2.2 获取当前时间戳 199
9.2.3 日期、时间转换为UNIX时间戳 199
9.3 日期和时间处理 201
9.3.1 格式化日期和时间 201
9.3.2 获取日期和时间信息 202
9.3.3 检验日期和时间的有效性 203
9.4 情景应用 204
9.4.1 获取系统当前时间和时间戳 204
9.4.2 比较两个时间的大小 204
9.4.3 倒计时 205
9.5 实战练习 205
9.5.1 计算程序的运行时间 205
9.5.2 网页闹钟 206
9.6 本章小结 207
第二篇 核心篇
第10章 文件和目录处理技术 210
10.1 基本的文件处理技术 211
10.1.1 打开一个文件 211
10.1.2 读取文件内容 214
10.1.3 向文件中写入数据 218
10.1.4 关闭文件指针 220
10.2 目录操作技术 220
10.2.1 打开指定目录 220
10.2.2 读取目录结构 221
10.2.3 关闭目录指针 222
10.3 文件的上传技术 223
10.3.1 开启文件上传功能 223
10.3.2 全局变量$_FILES应用 224
10.3.3 将上传文件移动到指定目录 225
10.3.4 文件下载技术 226
10.4 情景应用 227
10.4.1 通过文本文件统计网站访问量 227
10.4.2 规范化的文件上传 229
10.5 实战练习 231
10.5.1 从文本文件中读取注册服务条款 231
10.5.2 规范化的多文件上传 232
10.6 本章小结 233
第11章 图形图像处理技术 234
11.1 了解GD2函数库 235
11.2 设置GD2函数库 235
11.3 学习常用的图像处理技术 235
11.3.1 创建画布 236
11.3.2 颜色处理 237
11.3.3 绘制文字 237
11.3.4 输出图像 239
11.3.5 销毁图像 240
11.3.6 情景应用一——在照片上书写文字 240
11.3.7 情景应用二——GD2函数生成图像验证码 241
11.4 运用Jpgraph类库绘制图像 242
11.4.1 Jpgraph类库简介 242
11.4.2 Jpgraph的安装 242
11.4.3 情景应用一——柱状图展示2010年第一季度编程词典销量 243
11.4.4 情景应用二——折线图分析2010年公司销售额 245
11.4.5 情景应用三——多饼形图分析2010年图书销量 246
11.5 实战练习 248
11.5.1 GD2函数生成带有干扰线的图像验证码 248
11.5.2 Jpgraph创建折线图分析图书销售走势 249
11.5.3 Jpgraph创建3D饼形图展示部门业绩比较 250
11.6 本章小结 251
第12章 Cookie和会话控制 252
12.1 会话的操作 253
12.1.1 创建会话 253
12.1.2 配置PHP的会话 255
12.2 会话的高级应用 259
12.2.1 SESSION临时文件 259
12.2.2 SESSION缓存 259
12.2.3 SESSION数据库存储 261
12.3 Cookie的操作 263
12.3.1 设置Cookie 264
12.3.2 访问Cookie 265
12.3.3 删除Cookie 266
12.4 情景应用 267
12.4.1 登录验证 267
12.4.2 Cookie自动登录 269
12.5 实战练习 270
12.5.1 防止页面刷新 270
12.5.2 控制客户端Cookie 271
12.6 本章小结 272
第13章 面向对象 273
13.1 一切皆是对象 274
13.1.1 什么是类 274
13.1.2 对象的由来 274
13.1.3 面向对象的特点 275
13.2 类的声明 275
13.2.1 类的定义 275
13.2.2 成员属性 276
13.2.3 成员方法 277
13.3 类的实例化 277
13.3.1 创建对象 278
13.3.2 访问类中成员 278
13.3.3 特殊的访问方法——“$this”和“::” 279
13.3.4 构造方法和析构方法 280
13.4 面向对象的封装特性 281
13.4.1 public(公共成员) 282
13.4.2 private(私有成员) 282
13.4.3 protected(保护成员) 283
13.5 面向对象的继承特性 283
13.5.1 类的继承——extends关键字 283
13.5.2 类的继承——parent::关键字 284
13.5.3 覆盖父类方法 285
13.6 抽象类和接口 286
13.6.1 抽象类 286
13.6.2 接口 287
13.7 面向对象的多态性 289
13.7.1 通过继承实现多态 289
13.7.2 通过接口实现多态 290
13.8 面向对象的关键字 290
13.8.1 final关键字 291
13.8.2 static关键字——声明静态类成员 291
13.8.3 clone关键字——克隆对象 292
13.8.4 对象比较 293
13.8.5 instanceof关键字——对象类型检测 293
13.9 面向对象的魔术方法 293
13.9.1 _set()和_get()方法 294
13.9.2 _isset()和_unset()方法 294
13.9.3 _call()方法 294
12.9.4 _toString()方法 295
13.9.5 _autoload()方法 295
13.9.6 情景应用一——封装一个数据库连接类 296
13.9.7 情景应用二——封装一个数据库操作类 297
13.10 实战练习 298
13.10.1 分页类 299
13.10.2 万用表格 300
13.11 本章小结 301
第14章 MySQL数据库设计 302
14.1 MySQL概述 303
14.1.1 MySQL的特点 303
14.1.2 SQL和MySQL 303
14.2 MySQL服务器的启动和关闭 304
14.2.1 启动MySQL服务器 304
14.2.2 连接MySQL服务器 305
14.2.3 关闭MySQL服务器 305
14.3 操作MySQL数据库 306
14.3.1 创建新数据库 306
14.3.2 选择指定数据库 306
14.3.3 删除指定数据库 306
14.4 操作MySQL数据表 307
14.4.1 创建一个表 307
14.4.2 查看数据表结构 308
14.4.3 修改数据表结构 309
14.4.4 重命名数据表 310
14.4.5 删除指定数据表 310
14.5 操作MySQL数据 311
14.5.1 向数据表中添加数据(INSERT) 311
14.5.2 更新数据表中数据(UPDATE) 312
14.5.3 删除数据表中数据(DELETE) 312
14.5.4 查询数据表中数据 313
14.5.5 情景应用一——数据排序 316
14.5.6 情景应用二——limit控制输出数据的开始位置和记录数 316
14.6 MySQL数据类型 316
14.6.1 数字类型 317
14.6.2 字符串类型 317
14.6.3 日期和时间数据类型 319
14.7 用phpMyAdmin管理MySQL数据库 319
14.7.1 管理数据库 319
14.7.2 管理数据表 320
14.7.3 管理数据记录 322
14.7.4 导入/导出数据 324
14.8 实战练习 325
14.8.1 批量添加记录(LOAD DATA和MYSQLIMPORT) 325
14.8.2 在phpMyAdmin中重置MySQL服务器登录密码 326
14.9 本章小结 326
第15章 数据库编程技术 327
15.1 PHP操作MySQL数据库的步骤 328
15.2 PHP操作MySQL数据库的方法 329
15.2.1 mysql_connect()函数连接MySQL服务器 329
15.2.2 mysql_select_db()函数选择MySQL数据库 330
15.2.3 mysql_query()函数执行SQL语句 330
15.2.4 mysql_fetch_array()函数将结果集返回到数组中 331
15.2.5 mysql_fetch_row()函数从结果集中获取一行作为枚举数组 333
15.2.6 mysql_num_rows()函数获取查询结果集中的记录数 333
15.3 管理MySQL数据库中的数据 334
15.3.1 向数据库中添加数据 334
15.3.2 编辑数据库数据 335
15.3.3 从数据库中删除数据 336
15.3.4 批量数据操作 336
15.4 情景应用 337
15.4.1 通用查询 337
15.4.2 分组统计 338
15.4.3 对查询结果分页显示 339
15.4.4 站内搜索 340
15.5 实战练习 341
15.5.1 对查询结果进行跳转分页显示 341
15.5.2 高级查询 341
15.6 本章小结 342
第三篇 高级篇
第16章 PDO数据库抽象层 346
16.1 什么是PDO 347
16.1.1 PDO概述 347
16.1.2 PDO特点 347
16.1.3 安装PDO 347
16.2 PDO连接数据库 348
16.2.1 PDO构造函数 348
16.2.2 情景应用一——连接MySQL数据库 348
16.2.3 情景应用二——连接MS SQL Server数据库 349
16.2.4 情景应用三——连接Oracle数据库 350
16.3 PDO中执行SQL语句 350
16.3.1 exec()方法 351
16.3.2 query()方法 351
16.3.3 预处理语句——prepare()和execute() 352
16.3.4 情景应用一——通过PDO向数据库中添加数据 353
16.3.5 情景应用二——通过PDO更新数据库中数据 354
16.4 PDO中获取结果集 355
16.4.1 fetch()方法 355
16.4.2 fetchAll()方法 357
16.4.3 fetchColumn()方法 358
16.5 PDO中捕获SQL语句中的错误 359
16.5.1 使用默认模式——PDO::ERRMODE_SILENT 359
16.5.2 使用警告模式——PDO::ERRMODE_WARNING 360
16.5.3 使用异常模式——PDO::ERRMODE_EXCEPTION 361
16.6 PDO中错误处理 362
16.6.1 errorCode()方法 362
16.6.2 errorInfo()方法 363
16.7 PDO中事务处理 364
16.8 PDO中存储过程 366
16.9 实战练习 367
16.9.1 PDO读取MS SQL Server数据库中数据 367
16.9.2 PDO读取Oracle数据库中数据 368
16.10 本章小结 369
第17章 ADODB数据库抽象层 370
17.1 ADODB概述 371
17.1.1 ADODB的优点与缺点 371
17.1.2 ADODB的安装与操作流程 371
17.2 连接数据库系统和数据库 372
17.2.1 连接数据库系统——ADONewConnection()函数 372
17.2.2 数据库持久化连接——PConnect()函数 372
17.2.3 数据库非持久化连接——Connect()函数 372
17.2.4 情景应用一——ADODB连接MySQL数据库 373
17.2.5 情景应用二——ADODB连接Access数据库 374
17.2.6 情景应用三——ADODB连接MS SQL Server数据库 374
17.2.7 情景应用四——ADODB连接Oracle数据库 375
17.3 通过公共变量控制数据的存取方式 376
17.4 ADODB执行SQL语句 377
17.4.1 执行SQL语句——execute()函数 377
17.4.2 控制SELECT查询语句的起始位置——SelectLimit()函数 378
17.4.3 添加、更新数据——GetInsertSQL()、GetUpdateSQL()函数 379
17.4.4 操作SQL语句的其他方法 380
17.5 ADODB控制结果集 380
17.5.1 控制指针的方法 381
17.5.2 控制结果集内容的方法 382
17.5.3 日期格式和数据类型的转换 383
17.6 ADODB中的分页 384
17.6.1 ADODB分页函数 384
17.6.2 一个小巧的分页函数——ADODB_Pager()函数 385
17.7 ADODB中的错误处理 386
17.7.1 ADODB中的错误处理函数 386
17.7.2 ADODB中自定义的错误处理机制 387
17.7.3 情景应用——通过日志文件存储错误信息 388
17.8 ADODB中的事务处理 389
17.9 实战练习 390
17.9.1 封装ADODB连接数据库类 390
17.9.2 封装ADODB操作数据库类 391
17.9.3 封装ADODB分页类 392
17.9.4 通过事务处理机制保证数据转换的顺利完成 393
17.10 本章小结 395
第18章 PHP的字符编码 396
18.1 了解网页字符编码 397
18.1.1 ASCII 字符集 397
18.1.2 ISO 8859 字符集 397
18.1.3 GB2312与GBK编码 398
18.1.4 Unicode字符集 398
18.1.5 UTF-8编码 398
18.2 PHP网页的字符编码 399
18.2.1 设置编码格式 399
18.2.2 转换编码格式 400
18.2.3 检测字符串的编码 402
18.3 PHP开发中的乱码问题 403
18.3.1 解决页面中的乱码问题 403
18.3.2 数据库中的字符集编码问题 405
18.3.3 避免截取中文字符串时出现乱码 406
18.4 PHP区域化设置 407
18.4.1 PHP网页的区域化 407
18.4.2 使用setlocale()函数设置区域化 408
18.5 实战练习 409
18.5.1 避免截取超长文本时出现乱码 409
18.5.2 了解PHP编码规则 410
18.5.3 了解PHP编码风格 410
18.6 本章小结 412
第19章 程序调试与错误处理 413
19.1 基本调试策略 414
19.2 常见错误分析 414
19.2.1 语法错误 414
19.2.2 定义错误 417
19.2.3 逻辑错误 418
19.2.4 运行错误 419
19.2.5 环境错误 421
19.3 PHP.INI中的错误处理机制 422
19.3.1 控制错误显示及显示方式 423
19.3.2 控制错误的级别 423
19.4 程序调试方法 424
19.4.1 应用DIE语句调试 424
19.4.2 应用mysql_error()语句输出错误信息 425
19.4.3 应用try{}catch{}M语句抛出并捕获异常 425
19.5 错误处理技巧 427
19.5.1 隐藏错误 427
19.5.2 自定义错误页面 427
19.5.3 延长服务器执行时间——处理超时错误 428
19.6 情景应用 429
19.6.1 如何分析、解决PHP与MySQL连接错误 429
19.6.2 解决数据库乱码问题 431
19.7 实战练习 432
19.7.1 封装属于自己的异常处理类 432
19.7.2 使用错误处理器记录日志 433
19.8 本章小结 434
第20章 Smarty模板技术 435
20.1 走进Smarty模板引擎 436
20.1.1 Smarty模板引擎下载 437
20.1.2 Smarty模板引擎安装 437
20.1.3 Smarty模板引擎配置 437
20.1.4 情景应用一——走进Smarty模板引擎 439
20.1.5 情景应用二——封装Smarty模板的配置方法 440
20.2 Smarty模板设计——静态页处理 442
20.2.1 基本语法(注释、函数和属性) 442
20.2.2 Smarty模板设计变量 443
20.2.3 变量调节器 444
20.2.4 情景应用一——Smarty模板中日期、时间的格式化输出 445
20.2.5 情景应用二——通过组合修改器分隔多个变量调节器 445
20.2.6 内建函数(动态文件、模板文件的包含和流程控制语句) 446
20.2.7 情景应用三——Smarty模板创建网页框架 448
20.2.8 情景应用四——section语句循环输出数据库中的数据 450
20.2.9 自定义函数 451
20.2.10 配置文件 454
20.3 Smarty程序设计——动态文件操作 455
20.3.1 SMARTY_PATH常量 455
20.3.2 Smarty程序设计变量 455
20.3.3 Smarty方法 456
20.3.4 Smarty缓存 456
20.3.5 情景应用——开启网站注册页面的缓存 458
20.4 实战练习 460
20.4.1 Smarty+ADODB完成数据的分页输出 460
20.4.2 Smarty中通过truncate方法截取字符串 461
20.4.3 用Register_Function方法注册模板函数 462
20.4.4 Smarty模板中的关键字描红 464
20.5 本章小结 464
第四篇 实战篇
第21章 企业网站开发模板 466
21.1 明日企业网概述 467
21.2 开发背景 467
21.3 需求分析 467
21.4 功能结构 468
21.5 数据库设计 469
21.5.1 数据库概念设计 469
21.5.2 创建数据库及数据表 470
21.6 技术攻关 471
21.6.1 Smarty模板 471
21.6.2 最简单的网页框架 473
21.6.3 ADODB类库 473
21.6.4 封装分页类 474
21.7 首页设计 475
21.7.1 首页概述 475
21.7.2 首页技术分析 476
21.7.3 首页的实现过程 476
21.8 产品展示设计 478
21.8.1 产品展示概述 478
21.8.2 产品展示技术分析 478
21.8.3 产品展示实现过程 479
21.9 后台管理系统设计 480
21.9.1 后台管理系统概述 481
21.9.2 后台管理系统技术分析 481
21.9.3 后台管理系统实现过程 482
21.10 程序调试与错误处理 486
21.10.1 SQL语句的返回机制 486
21.10.2 错误处理 487
21.11 开发总结 488
附录 专业术语表 489
PHP网络编程标准教程的目录第1章PHP概述0011.1什么是PHP0021.2PHP开发语言的特点0021.3PHP的发展趋势0031.4如何学好PHP0041.5PHP的语法结构0051.5.1PHP标识符的规则0051.5.2PHP标记符的作用0051.6程序注释0061.6.1使用PHP注释0061.6.2使用HTML注释0071.6.3
PHP网络编程标准教程的目录第1章PHP概述0011.1什么是PHP0021.2PHP开发语言的特点0021.3PHP的发展趋势0031.4如何学好PHP0041.5PHP的语法结构0051.5.1PHP标识符的规则0051.5.2PHP标记符的作用0051.6程序注释0061.6.1使用PHP注释0061.6.2使用HTML注释0071.6.3
PHP从入门到精通的图书1书名:PHP从入门到精通作者:潘凯华同名出版社:清华大学出版社出版时间:2008ISBN:9787302179597开本:16定价:68.00元VD语音视频教学光盘22小时教学视频录像,全程语音讲解《PHP从入门到精通》实例源程序、相关素材《PHP从入门到精通》特色基础知识一核心技术一高级应用一项目实战268个应用实例,
PHP正则表达式的使用技巧PHP正则表达式的定义用于描述字符排列和匹配模式的一种语法规则它主要用于字符串的模式分割匹配查找及替换操作PHP中的正则函数PHP中有两套正则函数两者功能差不多分别为一套是由PCRE(PerlCompatibleRegularExpression)库提供的使用preg_为前缀命名的函数一套由POSIX(PortableOperatin
PHP函数代码基础知识?我们在学习PHP开发相关基础知识的时候,对于不同的开发原理以及代码的使用都是基本的能力要求。今天,昌平电脑培训就一起来了解PHP开发基础知识中的函数代码都有哪些。array()array(value1,value2..)创建数组array_chunk(array,size,preserve_keys)把一个数分割成新的数组块[tk]array
用PHP定义一个函数,返回3个参数中的最大值?可以使用以下代码定义一个函数,返回3个参数中的最大值:functionfindMax($num1,$num2,$num3){$max=$num1;if($num2>$max){$max=$num2;}if($num3>$max){$max=$num3;}return$max;}该函数接受3个
高中Python编程简单题?先从键盘输入5,就是给变量a赋值5,再输入6,就是给变量b赋值6。判断a是否大于b,如果成立,输出a,不成立输出b。现在a里面存放的是5,b里面存放的是6,所以,a>b的条件不成立,所以使用else内的输出,就是输出b的值。python的题目?1.将列表的元素按逆序重新存放。my_list=[1,2,3,4,5]my_list.reve
PHP中的函数ThinkPHP中C(),D(),S()1.在具体的Action方法里面,可以用C()对某些参数进行动态配置,主要指那些还没有使用的参数。具体用法如下:C('参数名称');//获取已经设置的参数值C('参数名称','新的参数值');//设置新的值2.D()函数的使用:先定义好模型类,如UserModel,然后就可以用D()函数对数据进行操作了。例如:
2025-02-01 20:24:39
2024-01-05 14:11:24
2025-02-12 03:21:37
2025-02-10 15:19:48
2025-01-28 17:58:32
2024-11-22 05:08:01