gpt4 book ai didi

php - 命名空间类、函数和如何使用

转载 作者:行者123 更新时间:2023-12-04 17:02:36 26 4
gpt4 key购买 nike

决定开始在我的 PHP 项目中使用命名空间,并且正在努力使这个简单的设置工作......我做错了什么?

第一.php

<?php

namespace MyNamespace;
use PDO;

class First {
function hello() {
return 'hello';
}
}

第二.php
<?php
namespace MyNamespace;
use PDO;
use function \MyNamespace\First;

class Second {
function world() {
$firstpart = \MyNamespace\First::hello();
return $firstpart . ' world';
}
}

index.php
<?php
echo \MyNamespace\Second::world();
?>

这给了我一个错误:

严格标准:非静态方法 MyNamespace\Second::world() 不应在第 2 行的/var/www/testsite/index.php 中静态调用

基本上,我正在寻找一种方法来调用同一命名空间内不同类中的不同函数。在我之前和一生中从未使用过命名空间,但是我尝试调用我的函数,它们最终给了我同样的错误。请问有什么指点吗?

最佳答案

您的错误表明尝试调用静态方法,这不是(类 第二个 ,方法 世界 - 不是静态的)

并且导入的函数空间名称必须如下:

第一.php

<?php
namespace MyNamespace;
function hello() {
return 'hello';
}

第二.php
<?php
namespace MyNamespace;
use function \MyNamespace\First\hello;

class Second {
static function world() {
$firstpart = hello();
return $firstpart . ' world';
}
}

并使用,例如:
 Second::world()

(我在声明方法世界里加了 静态字)

Read this

关于php - 命名空间类、函数和如何使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37354293/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com