簡體   English   中英

在PHP命名空間中使用函數

[英]Using function inside PHP Namespace

我正在與一個使用命名空間的CMS一起玩,我試圖利用它而不是包括文件並在這些文件中使用函數。

從我的理解和嘗試中,我將一個文件加載為PSR-4,其中包含一個聲明的名稱空間,類和一個我想訪問的函數。 看起來像:

namespace MyFunctions;

    class basic {

        function say_hello($a) { 
            echo "Hello, $a"; 
        }

    }

從另一個文件中,我可以看到在使用get_declared_classes()函數進行檢查時確實加載了“ MyFunctions”命名空間。 但是,我完全不知道如何使用“ say_hello()”函數。

我試過了:

use MyFunctions;

// instantiate class
$a = new basic();

// this gives me 'call to undefined function'
echo say_hello("Bob");

我試着在其他示例中進行挖掘,並且在嘗試訪問此功能的過程中遇到困難。 有人可以給我一個例子,說明如何從另一個文件訪問和使用“ say_hello()”函數嗎? 任何幫助將不勝感激,謝謝!

有了設置,您就可以在這里。 您將必須執行以下命令才能觸發該功能。

(new MyFunctions\basic)->say_hello("Bob");

(我不建議使用此方法,它會無緣無故地創建一個對象。)

我假設您想要的是:

namespace MyFunctions;

function say_hello($a)
{
    echo "Hello, $a";
}

在那時你可以使用

// this gives you 'Hello, Bob'
MyFunctions\say_hello("Bob");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM