Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Entwicklung(32)-ThinkPHP5.0(4) Namespace und öffentlicher Raum-PhpStorm

PHP-Entwicklung(32)-ThinkPHP5.0(4) Namespace und öffentlicher Raum-PhpStorm

黄舟
黄舟Original
2017-03-03 10:06:321729Durchsuche

In diesem Blogbeitrag werfen wir einen Blick auf die Beziehung zwischen Namespaces und öffentlichen Räumen und auf die Probleme, die bei deren Verwendung beachtet werden müssen. Wir werden sie anhand von 2 PHP-Dateien demonstrieren.

Beachten Sie, dass 1.php 2.php nicht enthalten kann und 2.php gleichzeitig 1.php enthält. Eine Endlosschleife meldet einen Fehler.

1.php:

<?php
    /**
     * 命名空间 公共空间 访问方式
     * 命名空间 优先级大于 公共空间
     */
    namespace shenyang;
    class Animal{
        public $obj = &#39;dog<br>&#39;;
        static $name = &#39;大黄<br>&#39;;
    }

    function getmsg(){
        echo "辽沈<br>";
    }

    const NM = "iwanghang1<br>";

    include("./2.php");

    getmsg(); // 打印结果:辽沈 (由此可见,引入的空间,对当前空间没有影响)

    echo \NM; // 打印结果:iwanghang2 (\ 公共空间 访问方式)
    echo NM; // 打印结果:iwanghang1 (假如,当前空间没有NM,就会去公共空间查找NM,)

2.php:

<?php
    function getmsg(){
        echo "北京";
    }

    const NM="iwanghang2<br>";

    /**
     * 注意,不能1.php include 2.php,同时,2.php include 1.php,死循环会报错
     * 当我们测试下面的代码的时候,要注释掉1.php中的“include("./2.php");”
     */
    include("./1.php");

    echo NM; // 不推荐的写法
    echo \NM; // 打印结果:iwanghang2
    echo \shenyang\NM; // 打印结果:iwanghang1

Das Obige ist PHP-Entwicklung (32)-ThinkPHP5.0 (4) Namespace und öffentlicher Raum – PHPStorm-Inhalte. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn