Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
正确使用php名称空间_Php_Oop - Fatal编程技术网

正确使用php名称空间

正确使用php名称空间,php,oop,Php,Oop,我试图弄清楚如何在php中使用名称空间。我一直在读关于如何使用它的书,由于某种原因,我无法让它工作。我有两个文件,一个存储在Applications/Database/Classes文件名为DatabaseConnection.php中,另一个存储在DB.php根目录中的DatabaseConnection.php文件中,我有以下代码: <?php function hello() { echo "hello"; } ?> 这是DB.ph

我试图弄清楚如何在php中使用名称空间。我一直在读关于如何使用它的书,由于某种原因,我无法让它工作。我有两个文件,一个存储在
Applications/Database/Classes
文件名为
DatabaseConnection.php
中,另一个存储在
DB.php
根目录中的
DatabaseConnection.php
文件中,我有以下代码:

<?php
    function hello()
    {
        echo "hello";
    }
?>

这是DB.php文件的内容:

<?php
namespace Applications\Database\Classes;
ini_set('display_errors', true);
hello();
?>


也许我完全不知道如何正确地使用它,但是如果我设置了一个名称空间,那么它与使用
include
require
相同吗?我可能完全误解了如何使用它。我是OOP新手,在开始尝试学习OOP之前从未听说过名称空间?有人能指出我做错了什么吗。

说明如何在PHP(PSR-0)中使用自动加载:

名称空间用于组织您的代码,以便您可以划分组件并帮助提高可读性。例如,如果我有一个类
Pittbull
和另一个类
Dashund
,我可以将它们放在一个名称空间中,就像这样用于组织:

Animals.Dogs.Pittbull
Animals.Dogs.Dashund
这也有助于处理以下可能发生的碰撞:

Animals.Dogs.Misc
Animals.Cats.Misc
在这个实例中,
Misc
类存在两次,但是不存在要使用的
Misc
冲突,您可以对两个类使用相同的类名(并且在它们内部具有不同的属性和方法),而不存在要使用哪个类的冲突


require
关键字是一个完全不同的概念,用于将实际文件加载到执行脚本中。

我知道一些技巧。。。他们使用空格的方式与您使用的方式几乎相同;)我从来没有进入过《星际迷航记》,太空不会自动要求文件。你可以使用@Yamaha32088,但你没有得到它!我知道我没弄明白哈哈