myFunc()
PHPでは、の代わりに、を使用して、別の名前空間からグローバル名前空間の関数にアクセスできます\myFunc()
。myFunc
現在の名前空間で解決できない場合、PHPは自動的にグローバル名前空間にフォールバックします。
推奨される方法はどれですか?\myFunc()
またはmyFunc()
?
myFunc()
PHPでは、の代わりに、を使用して、別の名前空間からグローバル名前空間の関数にアクセスできます\myFunc()
。myFunc
現在の名前空間で解決できない場合、PHPは自動的にグローバル名前空間にフォールバックします。
推奨される方法はどれですか?\myFunc()
またはmyFunc()
?
ある種のポリモーフィズムを実装する場合、または関数のロジックを完全に変更する場合は、2 番目のオプションが適しています。このようなもの。
namespace Nkamm;
// like a PHP6
function strstr($needle, $haystack)
{
return \strstr($haystack, $needle);
}
var_dump(strstr('t', 'Long test'));
結果:
string(4) "test"
しかし、私はそのような「オーバーロード」をしたくありません。なぜなら、それは混乱を引き起こすからです(プロジェクトで厳密に文書化されるまで)。したがって、既存の関数を上書きする意味はありません。
要約: 関数を名前空間に保持し、バックスラッシュなしでグローバル関数を使用します。