같은 디렉토리에 두 개의 PHP 파일이 있습니다
질문:
indexb.php의 클래스 c에서 index.php의 클래스 a와 클래스 b의 정적 메서드를 각각 어떻게 호출합니까?
네임스페이스는 어떻게 채우고 사용하나요?
파일 1: index.php
<code>namespace { use class a{ static public function speak($a) { echo $a; } } } namespace { use class a{ static public function speak($a) { echo $a.$a; } } } </code>
파일 2: indexb.php
<code>namespace Php { class c { } }</code>
같은 디렉토리에 두 개의 PHP 파일이 있습니다
질문:
indexb.php의 클래스 c에서 index.php의 클래스 a와 클래스 b의 정적 메서드를 각각 어떻게 호출합니까?
네임스페이스는 어떻게 채우고 사용하나요?
파일 1: index.php
<code>namespace { use class a{ static public function speak($a) { echo $a; } } } namespace { use class a{ static public function speak($a) { echo $a.$a; } } } </code>
파일 2: indexb.php
<code>namespace Php { class c { } }</code>
index.php 파일:
<code><?php namespace A{ class A{ static public function speak($a) { echo $a; } } } namespace B{ class B{ static public function speak($a) { echo $a; } } }</code>
indexb.php 파일
<code><?php namespace PHP{ use A\A; use B\B; class C{ public static function test(){ include "index.php"; A::speak("I am A!"); B::speak("I am B!"); } } //测试 \PHP\C::test(); }</code>
indexb.php를 실행하면 나는 A입니다!
이것이 당신이 원하는 결과인가요?
index.php
<code><?php namespace test{ class a { static public function speak($a) { echo $a; } } } namespace test2{ class b { static public function speak($a) { echo $a.$a; } } }</code>
indexb.php
<code><?php namespace testt{ include 'index.php'; use test\a; use test2\b; class c { public $a; public function speak() { // var_dump(new a); // \test\a::speak($this->a); a::speak($this->a); // \test2\b::speak($this->a); b::speak($this->a); } } $c = new \testt\c(); $c->a = 'zhansan'; $c->speak(); }</code>