検索

ホームページ  >  に質問  >  本文

名前空間の問題に関して、どなたかベテランの方、分析を手伝っていただけませんか? 私は初心者です。

//namespace1.php
<?php
namespace Demo1;
class test1
{
	private $name='www.php.cn';
	public function getName()
	{
		return $this->name;
	}
}

//namespace2.php
<?php
namespace Demo2;
require('namespace1.php');
use Demo1\test1;
class test1
{
	private $name='PHP中文网';
	public function getName()
	{
		return $this->name;
	}
}

問題は、namespace2.php

にアクセスすると次のエラーが発生する理由です。致命的なエラー: 名前は既に ## で使用されているため、クラス Demo2\test1 を宣言できません。

#Demo1\test1 を使用する場合、クラスにエイリアスを与える必要がありますか? ? 「D1test1 として」??????

案内してください

小白一直白小白一直白1608日前1036

全員に返信(2)返信します

  • 零时差

    零时差2020-07-08 23:11:28

    test1 クラスは、demo1 にすでに存在します。次に、ファイル require('namespace1.php'); を適用し、demo1 クラスを参照します use Demo1\test1;

    エラーは発生しないと思いますか?彼に別名を付けてもらえますか?

    返事
    1
  • 小白一直白

    これが私が混乱している点で、主に Peter_zhu さんの動画を見ていたのですが、エイリアスを設定せずに成功したのですが、数日間混乱していました。

    小白一直白 · 2020-07-10 09:05:20
  • キャンセル返事