没有合适的资源?快使用搜索试试~ 我知道了~
首页PHP5官方手册:从入门到高级特性详解
PHP5官方手册:从入门到高级特性详解
需积分: 9 1 下载量 137 浏览量
更新于2024-07-15
收藏 20.29MB PDF 举报
"PHP5手册是一份详尽的文档,涵盖了PHP 5编程语言的方方面面,由Mehdi Achour、Friedhelm Betz等多位知名开发者及翻译团队编撰。该手册于2005年由PHP5研究室编译,适用于Unix、MacOSX和Windows系统,以及PECL扩展库的安装。手册内容包括入门指引,如简介和简明教程,帮助读者快速理解和上手PHP。 在入门部分,它详细介绍了PHP的基本语法、数据类型、变量、常量、表达式、运算符和流程控制结构,为初学者提供了一个坚实的基础。对于高级主题,手册涵盖了类与对象的概念,以及在PHP4和PHP5中的不同实现,异常处理、引用的理解等内容。 安全章节着重讨论了PHP的安全性,涉及CGI和Apache模块安装时的注意事项,文件系统和数据库安全策略,错误报告的管理,以及防止SQL注入和跨站脚本攻击的技巧。手册还强调了定期更新的重要性,确保软件的安全性和稳定性。 手册的特点部分阐述了PHP在Web开发中的实用功能,如HTTP认证、cookies、会话管理、XForms处理、文件上传、远程文件访问、数据库连接和持久化连接,以及PHP在命令行环境下的应用。此外,还列出了多个特定领域的函数参考,如.NET函数、高级调试工具、替代缓存方法、Apache专用函数、数组操作、废弃的Aspell函数、高精度BCmath数学函数等。 总体而言,PHP5手册是PHP开发者不可或缺的参考资料,无论是初次接触PHP的新手还是经验丰富的程序员,都能从中获取深入的理论知识和实践指导。这份手册的中文版本翻译团队成员包括王远之、肖理达等人,他们为全球PHP开发者提供了方便的本地化学习资料。"
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/14978567/bg10.jpg)
PHP 手 册
后 退 前 进
章 2. 简明教 程
目 录
需要些什么 ?
第一 个 PHP 页 面
实用的脚 本
处理表 单
在新版本 的 PHP 中使用旧 的 PHP 代 码
下一步做什么 ?
本章将给出关 于 PHP 的简明教程。虽 然 PHP 的功能并不局限于生成动态 的 web 页面,但本章的内容仅涉及于此。请 查
阅 “ PHP 能做什 么 ” 一节以获取更多信息 。
使用 了 PHP 的 web 页面将被和通常 的 HTML 页面一样处理,可以用通常建 立 HTML 页面的方法来建立和编辑它们 。
需要些什么 ?
在本教程中,假设用户的服务器已经安装并运行 了 PH P ,所有 以 .php 结尾的文件都将 由 PHP 来处理。在大部分的 服
务器上,这 是 PHP 的默认扩展名,不过,也请询问服务器管理员以确认。如果服务器支 持 PH P ,则不需要做任何事情 。
只用建 立 .php 文件,并把它们放置 到 web 目录中,服务器将神奇地自动解析这些文件。不用编译任何东西,也不用安 装
任何其它的工具,仅仅只需把这些使用 了 PHP 的文件想象成简单 的 HTML 文件,其中只不过多了一种新的标识符,在 这
里可以做各种各样的事情。大多数 的 web 主机都提 供 PHP 的支持,如果你的主机不支持,可以访 问 PHP 相关链 接 来 查
找支 持 PHP 的 web 主机 。
假设用户希望在本地机器开发以节约宝贵的带宽。在这种情况下,需要安装一个诸 如 Apache 的 web 服务器,当然 还
有 PHP 。可能还希望安装一个数据库,例 如 MySQL 。
可以一个个的安装它们或选择一个更简单的方法。可以参考本手册 中 PHP 安装说 明 的相关章节(假设已经配置好了某 个
web 服务器)。若在自己安 装 PHP 时出现了问题,建议 在 安装邮件列 表 中询问。如果想使用更简便的方法安 装 PH P ,
那么可以考 虑 获取一个预先配置的安装 包 ,用这个安装包,只用点击几下鼠标,就可以自动地安装所有这些系统。在任何 操
作系统下建立 有 PHP 支持 的 web 服务器都十分简单,包 括 MacOS X 、 Linux 和 Windiw s 。 在 Linux 下,会发 现
rpmfind 和 PBone 能够在获 取 RPM 时提供帮助。也可以使 用 apt-get 搜 索 Debian 的相关软件包 。
后 退 起 点 前 进
PHP 能做什么 ?
上一 级
第一 个 PHP 页 面
![](https://csdnimg.cn/release/download_crawler_static/14978567/bg11.jpg)
PHP 手 册
后 退 章 2. 简明教 程 前 进
第一 个 PHP 页 面
在 web 服务器根目录 ( DOCUMENT_ROOT )下建立一个文件名 为 hello.php ,然后完成如下内容 :
例 子 2-1. 第一 个 PHP 脚本 : hello.php
<html>
<head>
<title>PHP 测试 </title >
</head>
<body>
<?php echo '<p>Hello World</p>' ; ?>
</body>
</html>
在浏览器的地址栏里输 入 web 服务器 的 URL 访问这个文件,在结尾加 上 “/hello.php ” 。如果本地开发,那么这 个 UR L
一般 是 http://localhost/hello.php 或 者 http://127.0.0.1/hello.php ,当然这取决 于 web 服务器的设置。如果所 有
的设置都正确,那么这个文件将 被 PHP 解析,浏览器中将会输出如下结果 :
<html >
<head >
<title>PHP 测 试 </title >
</head >
<body >
<p>Hello World</p >
</body >
</html >
该程序非常的简单,它仅仅只是利用 了 PHP 的 echo() 语句显示 了 Hello World 。用户一定不会满足与此。请注意 该
文 件 无需被执 行 或以任何方式指定。服务器会找到该文件并提供 给 PHP 进行解释,因为使用 了 “.php ” 的扩展名,服务 器
已被配置成自动传递有 着 “.php ” 扩展名的文件 给 PH P 。一个普通 的 HTML 文件,加上了几个特别的标签,就可以做很 多
非常有趣的事情 !
如果试过了这个例子,但是没有得到任何输出,或者浏览器弹出了下载框,或者浏览器以文本方式显示了源文件,可能的 原
因是服务器还没有支 持 PH P ,或者没有正确配置。需要请服务器的管理员根据本手 册 “ 安 装 ” 一章的内容使得服务器支 持
PH P 。如果本地开发,请阅读手册有关安装的章节以确保所有的设置都正确。还要确认通过浏览器访问 的 URL 确实指 向
了服务器上的这个文件。如果只是从本地文件系统调用这个文件,它不会 被 PHP 解析。如果问题仍然存在,请通 过 PH P
在线支 持 中的各种方式获取帮助 。
![](https://csdnimg.cn/release/download_crawler_static/14978567/bg12.jpg)
以上例子的目的是为了显 示 PHP 特殊标识符的格式。在这个例子中, 用 <?php 来表 示 PHP 标识符的起始,然后 放
入 PHP 语句并通过加上一个终止标识 符 ?> 来退 出 PHP 模式。可以根据自己的需要 在 HTML 文件中像这样开启或 关
闭 PHP 模式。请参阅手册 中 “ PHP 基本语 法 ” 以获取更多信息 。
关于文本编辑 器 : 有很多文本编辑器以及集成开发环境 ( ID E )可以被用来建立、编辑和管 理 PHP 文
件。这些工具中的一部分被列 在 PHP 编辑器列 表 中。如果希望推荐其它的编辑器,请访问以上页面 ,
并要求该页面的维护者将你推荐的编辑器加入到该列表中。使用支持语法高亮功能的编辑器会给开发 带
来很多帮助 。
关于文字处理 器 : 诸 如 StarOffice Write r 、 Microsoft Word 和 Abiword 的文字处理器不适合 用
来编 辑 PHP 程序。如果希望用以上这些工具的某一种来处理脚本,必须保证将结果存成 了 纯文 本 格
式,否 则 PHP 将无法读取并运行这些脚本 。
关 于 Windows 记事 本 : 如果使 用 Windows 记事本来编 写 PHP 脚本,需要注意在保存文件时 ,
文件的后缀名应该 为 .ph p (记事本将自动在文件名后面加 上 .txt 后缀,除非采取以下措施之一来避 免
这种情况)。当保存文件时,系统会让你指定文件的文件名,这时请将文件名加上引号(例 如
"hello.php" )。或者,也可以点 击 “ 保 存 ” 对话框中 的 “ 保存类 型 ” 下拉菜单,并将设置改 为 “ 所有文 件 ” 。 这
样在输入文件名的时候就不用加引号了 。
现在已经成功建立了一个简单 的 PHP 脚本。还可以建立一个最著名 的 PHP 脚本。调用函 数 phpinfo() ,将会看到 很
多有关自己系统有用的信息,以 及 预定义变 量 、已经加载 的 PHP 模块 和 配 置 信息。请花一些时间来查看这些重要的 信
息 。
例 子 2-2. 从 PHP 获取系统信 息
<?php phpinfo (); ?>
后 退 起 点 前 进
简明教 程 上一 级 实用的脚 本
![](https://csdnimg.cn/release/download_crawler_static/14978567/bg13.jpg)
PHP 手 册
后 退 章 2. 简明教 程 前 进
实用的脚 本
现在来编写一些更实用的脚本,比如检查浏览页面的访问者在用什么浏览器。要达到这个目的,需要检查用户 的 agent 字
符串,它是浏览器发送 的 HTTP 请求的一部分。该信息被存储在一 个 变 量 中。 在 PHP 中,变量总是以一个美元符开头 。
我们现在感兴趣的变量 是 $_SERVER['HTTP_USER_AGENT'] 。
注 : $_SERVER 是一个特殊 的 PHP 保留变量,它包含 了 web 服务器提供的所有信息,被称为 自
动全局变量( 或 “ 超全局变 量 ” )。请查阅本手 册 “超全局变 量 ” 中的有关内容以获取更多信息。这些特 殊
的变量是 在 PHP 4.1.0 版本引入的。在这之前使 用 $HTTP_*_VARS 数组, 如
$HTTP_SERVER_VARS 。尽管现在已经不用了,但它们在新版本中仍然存在(参 见 “ 旧代 码 ”
一节中的注解) 。
要显示该变量,只需简单地进行如下操作 :
例 子 2-3. 打印一个变量(数组元素 )
<?php echo $_SERVER [ 'HTTP_USER_AGENT' ]; ?>
该脚本的输出可能是 :
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
PHP 有很多种不 同 类 型 的变量。在以上例子中我们打印了一 个 数 组 的单元。数组是一类非常有用的变量 。
$_SERVER 只 是 PHP 自动全局化的变量之一。可以查 阅 “ 保留变 量 ” 一节来查看这些变量的列表,或者也可以通过上 节
例子 中 phpinfo() 函数的输出来查看 。
可以在一 个 PHP 标识中加入多 个 PHP 语句,也可以建立一个代码块来做比简单 的 echo 更多的事情。例如,如果需 要
识 别 Internet Explore r ,可以进行如下操作 :
例 子 2-4. 流程控 制 与 函 数 的使 用
<?php
if ( strpos ( $_SERVER [ 'HTTP_USER_AGENT' ], 'MSIE' ) !== FALSE ) {
echo ' 正在使用 Internet Explorer 。 <br /> ' ;
}
?>
![](https://csdnimg.cn/release/download_crawler_static/14978567/bg14.jpg)
该脚本的输出可能是 :
正在使 用 Internet Explore r 。 <br / >
这里要介绍一些新的原理。上面用了一 个 if 语句。如果用户 对 C 语言的基本语法比较熟悉,则应该对此很熟悉,否则, 可
能需要拿起任何一 本 PHP 介绍性的书籍并阅读前面的两三个章节,或者也可以阅读本手册 的 “ 语言参 考 ” 一章。可以 在
http://www.php.net/books.php 找到有 关 PHP 的书籍的列表 。
需要介绍的第二个原理,是 对 strpos() 函数的调用 。 strpos() 是 PHP 的一个内置函数,其功能是在一个字符串中 搜
索另外一个字符串。例如我们现在需要 在 $_SERVER['HTTP_USER_AGENT'] (即所谓 的 haystac k )变量中寻 找
'MSIE' 。如果在这 个 haystack 中该字符串(即所谓 的 needl e )被找到,则函数返 回 needle 在 haystack 中相对 开
头的位置;如果没有,则返 回 FALSE 。如果该函数没有返 回 FALSE , 则 if 会将条件判断 为 TRUE 并运行其花括 号 {} 内
的代码;否则,则不运行这些代码。可以自己尝试利 用 if , else 以及其它的函数,例 如 strtoupper() 和 strlen() , 来
建立类似的脚本。在本手册中相关的页面也包含有范例。如果对如何使用函数不是很确定,可以阅读手册中有 关 “ 如何阅读 函
数定 义 ” 和 “ 函 数 ” 的有关章节 。
以下我们进一步显示如何进 出 PHP 模式,甚至是在一 个 PHP 代码块的中间 :
例 子 2-5. 混 和 HTML 和 PHP 模 式
<?php
if ( strpos ( $_SERVER [ 'HTTP_USER_AGENT' ], 'MSIE' ) !== FALSE ) {
?>
<h3>strpos() 肯定没有返回假 (FALSE)</h3 >
<p> 正在使用 Internet Explorer</p >
<?php
} else {
?>
<h3>strpos() 肯定返回假 (FALSE)</h3 >
<center><b> 没有使用 Internet Explorer</b></center >
<?php
}
?>
该脚本的输出可能是 :
<h3>strpos() 肯定没有返回 假 (FALSE)</h3 >
<p > 正在使 用 Internet Explorer</p >
和以上我们用一 个 PHP 的 echo 语句来输出不同的是,我们跳出 了 PHP 模式来直接 写 HTML 代码。这里很值得注 意
的一点是,对于这两种情况而言,脚本的逻辑效率是相同的。在判断 了 strpos() 函数的返回值 是 TRUE 或 是 FALSE ,
也就是判断了字符 串 'MSIE' 是否被找到之后,最终只有一 个 HTML 块被发送给浏览者 。
剩余3846页未读,继续阅读
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/7d8ddc310576471fa68886f66f26fe2f_chenxz_76.jpg!1)
chenxz_76
- 粉丝: 9
- 资源: 27
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 多模态联合稀疏表示在视频目标跟踪中的应用
- Kubernetes资源管控与Gardener开源软件实践解析
- MPI集群监控与负载平衡策略
- 自动化PHP安全漏洞检测:静态代码分析与数据流方法
- 青苔数据CEO程永:技术生态与阿里云开放创新
- 制造业转型: HyperX引领企业上云策略
- 赵维五分享:航空工业电子采购上云实战与运维策略
- 单片机控制的LED点阵显示屏设计及其实现
- 驻云科技李俊涛:AI驱动的云上服务新趋势与挑战
- 6LoWPAN物联网边界路由器:设计与实现
- 猩便利工程师仲小玉:Terraform云资源管理最佳实践与团队协作
- 类差分度改进的互信息特征选择提升文本分类性能
- VERITAS与阿里云合作的混合云转型与数据保护方案
- 云制造中的生产线仿真模型设计与虚拟化研究
- 汪洋在PostgresChina2018分享:高可用 PostgreSQL 工具与架构设计
- 2018 PostgresChina大会:阿里云时空引擎Ganos在PostgreSQL中的创新应用与多模型存储
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)