2012-02-07 15 views
0

可能性の重複:
Undeclare a class in PHPクラスでPHPファイルを複数回要求する方法は?

クラスA.phpでA、BはB.phpにあります。私はAの関数の一つにBの新しいインスタンスを作成します。その関数では、私はB.phpファイルとその構造を変更し、A.phpのcontinue行に新しいB.phpを使いたいと思います。

私はrequire 'B.php'呼び出す場合には、Fatal error: Cannot redeclare class B

がメモリから「クラスB」を削除して、もう一度それを必要とするどのような方法があると言いますか?

私はDoctrineという名前のORMを使用しています。エンティティのファイルを生成するフォームビルダーがあります。フォームが送信されたときエンティティのファイルを変更して再度要求し、新しいオブジェクトを使用する必要があります。これは私の実際の問題です

あるいは、ファイルを別の名前のようにpythonに含める方法はありますか? Pythonで私たちは言うimport sys as MyName

+1

があります以前に定義されたクラスを再宣言します。あなたはあなたのアプローチを再考したいかもしれません。 – nickb

+1

別のPHPスクリプトのコードを変更することは私にとって非常に奇妙なようです。あなたは本当に**必要**それは? – k102

+0

なぜあなたはそれをしたいですか?そして、これらのBインスタンスとBクラスを継承しているすべてのクラスとそれらすべてのインスタンスをどのように削除したいですか?これは、あなたがこれを行う理由を説明しない限り、非常に良く記述されていないソフトウェアです。 – Tadeck

答えて

-5

あなたは警告を送信しないこのように機能require_once('B.php')またはinclude_once('B.php')を使用する必要があります。そこでは、スノーはクラスをメモリから削除する必要があります。 WPはこの機能を使用します。

http://cz2.php.net/include_once

http://cz2.php.net/require_once

+0

-1いいえ、質問を読んでください。あなたの答えは間違っているだけでなく、それは全くOPに役立たない。 – nickb

+1

あなたがなぜ投票-1をしたのか、問題はデザインではありません。 OK。そのコード –

+3

あなたの答えは間違っているだけでなく(どちらの関数も、OPが投稿したSAMEエラーを発生させる)、それは元の質問に答えることはないので、-1の票が大好きです。 – nickb

0

たぶん、あなたはa.php両方とb.php上のクラスと同じこれは、あなたがPHPを強制について尋ねている場合は特に、貧しい人々のデザインのような音が

関連する問題