V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
justrand
V2EX  ›  问与答

PHP 命名空间 namespace 使用了为啥会无效?

  •  
  •   justrand · 2021-12-27 17:00:44 +08:00 · 1017 次点击
    这是一个创建于 822 天前的主题,其中的信息可能已经有所发展或是发生改变。

    微信截图_20211227170010.png

    holystrike
        1
    holystrike  
       2021-12-27 17:03:59 +08:00
    你 Test 类没有 namespace 啊
    justrand
        2
    justrand  
    OP
       2021-12-27 17:08:18 +08:00
    @holystrike 有的,截图忘记截图了
    namespace App;
    class Test
    {
    public static function hello()
    {
    echo "hello world";
    }
    }
    public static function hello()
    {
    echo "hello world";
    }
    }
    justrand
        3
    justrand  
    OP
       2021-12-27 17:09:31 +08:00
    @holystrike #3 不对
    原来代码是这样的
    namespace App;
    class Test
    {
    public static function hello()
    {
    echo "hello world";
    }
    }
    luobailiang
        4
    luobailiang  
       2021-12-27 17:12:54 +08:00   ❤️ 1
    没 include
    abigeater
        5
    abigeater  
       2021-12-27 17:36:56 +08:00   ❤️ 1
    命名空间得配合自动加载或者手动 incldue 吧
    elevioux
        6
    elevioux  
       2021-12-27 18:35:33 +08:00 via Android   ❤️ 1
    楼主从其他语言转过来的? php 原生不可以直接通过命名空间来加载的。要手动 require ,或者实现 SPL autoload 。autoload 方法是实现 psr 规范的核心
    justfun
        7
    justfun  
       2021-12-27 18:45:00 +08:00   ❤️ 1
    你在 app.php 去调用 test.php 的类当然找不到。要不你手动把 test.php include 进来,要不就 spl_autoload_register 自动加载类。

    https://www.php.net/manual/zh/function.spl-autoload-register.php
    FaceBug
        8
    FaceBug  
       2021-12-27 18:48:46 +08:00
    关键词:PSR-4
    t6attack
        9
    t6attack  
       2021-12-27 19:24:57 +08:00
    两个文件是独立存在的。
    panlatent
        10
    panlatent  
       2021-12-28 01:58:10 +08:00 via iPhone
    好家伙,没一个答对的。
    panlatent
        11
    panlatent  
       2021-12-28 03:37:25 +08:00 via iPhone
    好家伙,草率了
    justrand
        12
    justrand  
    OP
       2021-12-28 08:32:05 +08:00
    @justfun 感谢,是我理解错了,以为 namespace 后就不需要 include 。感谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1184 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 18:22 · PVG 02:22 · LAX 11:22 · JFK 14:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.