本文目录一览:
- 1、有关php代码问题r = new Yaf\Config\Ini 中间反斜杠是什么原理与语法呀
- 2、php的namespace是什么?有什么用
- 3、php namespace 命名空间出错?
- 4、PHP中不同文件夹使用相同的命名空间,相互之间应该如何调用呢?能不能举例说明一下。
- 5、关于php的命名空间的问题
有关php代码问题r = new Yaf\Config\Ini 中间反斜杠是什么原理与语法呀
这是PHP5.3中的新特性:namespace,这是用于解决命名冲突的。 比如说一个PHP文件写了 ?php namespace Yaf { function config(){…} } ? 那么在别的地方就要用Yaf\Config来调用。 针对你无法运行的问题,你只好更新php版本了。 最新的PHP版本值得更新,有大量有用的新特性(如匿名函数),很多PHP框架必须要至少5.3才能正常运行。
求采纳
php的namespace是什么?有什么用
1. namespace Zend\Http\PhpEnvironment;
这句代码定义了一个命名空间,你可以理解为定义一个名称为 Zend\Http\PhpEnvironment 的域名。
在定义了之后,下面所申明的class, interface, const等都是在申明的这个“域”里面的。当引用一个申明了命名空间的包含文件,想要调用这个里面的东西,那就必须:
调整当前脚本也到这个域名里,否则,就得用namesapce的全称。
比如,inc.php 文件:
namespace Zend\Http\PhpEnvironment;
class Bar {}//定义了一个类
则其他文件调用时:
// 访问Foo的第一种方法,用全称
require ‘inc.php’;
$foo = new \Zend\Http\PhpEnvironment\Bar();
// 访问Foo的第二种方法
namespace Foo; // 调整当前脚本到Foo这个ns域,而且namespace申明必须在第一句
require ‘inc.php’;
$foo = new Bar();
2. use关键字目的是使用ns的别名:
比如说,上面的
// 访问Foo的第一种方法,用全称
require ‘inc.php’;
$foo = new \Zend\Http\PhpEnvironment\Bar();
用uses后,写法如下:
use \Zend\Http\PhpEnvironment as pe; //定义别名
$foo = new \pe\Bar(); //用短的别名来代替原来的
如果省略后面的as ….,那么,就可以直接用最后一节的文字来代替,比如,上面的:
use \Zend\Http\PhpEnvironment; //定义别名
$foo = new \PhpEnvironment\Bar(); //用短的别名来代替原来的
================================================
php官方手册中的相关内容:
在PHP中,namespace命名空间用来解决在编写类库或应用程序时创建可重用的代码如类或函数时碰到的两类问题:
1. 用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。
2. 为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。
PHP 命名空间提供了一种将相关的类、函数和常量组合到一起的途径。
PHP 命名空间支持有两种使用别名或导入方式:为类名称使用别名,或为命名空间名称使用别名, 别名通过操作符 use 来实现。
php namespace 命名空间出错?
语法上没有任何问题。
你的PHP版本是多少?PHP在5.3.0版本以后开始支持命名空间。你的PHP版本可能比较低。
PHP中不同文件夹使用相同的命名空间,相互之间应该如何调用呢?能不能举例说明一下。
那么在不同文件中命名相同的命名空间就表示在一个容器下…不过在不同目录下相同的命名空间我还不是太清楚.一般都是在一个项目文件下的…我去找找有答案在添加
命名空间可以解决下面两个问题:
(1)用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。
(2)为很长的标识符创建一个别名,提高代码的可读性,减少代码的编写量。
关于php的命名空间的问题
PHP 命名空间(namespace)是在PHP 5.3中加入的,如果你学过C#和Java,那命名空间就不算什么新事物。 不过在PHP当中还是有着相当重要的意义。
PHP 命名空间可以解决以下两类问题:
用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。
为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。
默认情况下,所有常量、类和函数名都放在全局空间下,就和PHP支持命名空间之前一样。
命名空间通过关键字namespace 来声明。如果一个文件中包含命名空间,它必须在其它所有代码之前声明命名空间。
PHP支持两种抽象的访问当前命名空间内部元素的方法,__NAMESPACE__ 魔术常量和namespace关键字。
常量__NAMESPACE__的值是包含当前命名空间名称的字符串。在全局的,不包括在任何命名空间中的代码,它包含一个空的字符串
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/285749.html