<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head>
<card title="PHP 命名空间 - PHP 面向对象程序设计（oop）系列教程一" id="card1">
<p> 游客</p><p>
标题:PHP 命名空间 - PHP 面向对象程序设计（oop）系列教程一<br/>
正文:<br/>
命名空间概述在PHP中，命名空间用来解决在编写类库或应用程序时创建可重用的代码如类或函数时碰到的两类问题：用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。<br/>为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名（或简短）的名称，提高源代码的可读性。<br/>PHP 命名空间提供了一种将相关的类、函数和常量组合到一起的途径。下面是一个说明 PHP 命名空间语法的示例：定义命名空间虽然任意合法的PHP代码都可以包含在命名空间中，但只有三种类型的代码受命名空间的影响，它们是：类，函数和常量。命名空间通过关键字namespace 来声明。如果一个文件中包含命名空间，它必须在其它所有代码之前声明命名空间。另外，与PHP其它的语言特征不同，同一个命名空间可以定义在多个文件中，即允许将同一个命名空间的内容分割存放在不同的文件中。当然你也可以在同一个文件中定义多个命名空间。代码如下:namespace MyProject;<br/>class MyClass<br/>{<br/>    #code...<br/>}定义子命名空间：与目录和文件的关系很象，PHP 命名空间也允许指定层次化的命名空间的名称。因此，命名空间的名字可以使用分层次的方式定义：代码如下:namespace MyProject\helper\http;<br/>class MyClass<br/>{<br/>    #code...<br/>}在同一个文件中定义多个命名空间：在同一个文件中声明多个命名空间有两种方式，不过在实际编程实践中，非常不提倡在同一个文件中定义多戈命名空间。这种方式的主要用于将多个 PHP 脚本合并在同一个文件中。下面列出第一种方法。代码如下:namespace MyProject\helper\http;<br/>class MyClass<br/>{<br/>    #code...<br/>}<br/>namespace MyProject\helper\request;<br/>class MyClass<br/>{<br/>    #code...<br/>}不过强烈不建议使用这种方法，可以参考下面的大括号定义法<br/><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1574&amp;Page=1">[&lt;&lt;]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1574&amp;Page=1">[[1]]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1574&amp;Page=2">[2]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1574&amp;Page=3">[3]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=1574&amp;Page=6">[&gt;&gt;]</a><br/>
<br/>
<a href="wap.asp?act=Com&amp;id=1574">查看评论(0)</a><br/>
<a href="wap.asp?act=AddCom&amp;inpId=1574">发表评论</a><br/><br/>

<br/>

<br/>
<a href="http://camnpr.com/wap.asp">首页</a>
</p>
</card>
</wml>