ホームページ  >  記事  >  バックエンド開発  >  クラスが別のクラスのメソッドを参照すると機能しないのはなぜですか?

クラスが別のクラスのメソッドを参照すると機能しないのはなぜですか?

WBOY
WBOYオリジナル
2016-06-13 13:46:13944ブラウズ

クラスが別のクラスのメソッドを参照できないのはなぜですか?
データベース クラス sql.php があります。
クラス名を取得するための新しいデータ接続クラスが追加される構成ファイル config.php があります。 $db
の操作ファイル aa.php 内に config.php

を導入し、aa.php にクラス名 Aa を設定します。 Aa の .php ですが、Eclipse はメソッドのプロンプトを表示しません (明らかに参照は失敗しました)
ただし、Aa クラスの外でメソッドを参照すると、Eclipse はメソッドのプロンプトを表示します。


なぜですか。あるクラスのメソッドが別のクラスのメソッドを参照できないほど難しいのでしょうか?



-----解決策---------------------------- ----
はい!
外部でインスタンス化して、パラメータとしてクラスに渡すことができます
外部でインスタンス化して、クラス内でグローバル変数を宣言できます
クラス内でインスタンス化できます
静的プロパティを渡すこともできます
シングルトンモードでも使用できます

------解決策---------

話し合う
データベース クラス sql.php があります
設定ファイル config.php があり、新しいデータ接続クラスを取得してクラス名 $db を取得します
config.php を操作ファイル aa に導入します.php

aa.phpでクラス名Aaが決まっていますが、Aa内のデータベースクラスsql.phpのメソッドを使いたいのですが、Eclipseではメソッドのプロンプトが表示されません(当然参照は失敗します)。 <-これは必ずしも必要ではありません。参照が失敗し、IDE の構文プロンプトが正常に動作しないことがあります。
しかし、Aa クラスの外のメソッドを参照すると、Eclipse はメソッド


なぜこれ...
を要求しました。
------解決策---------
話し合う

config.php で $db をインスタンス化しました
aa.php で config.php を参照しました
上記のように、直接
$db- >メソッド
を実行しても問題ありません。
しかし、これは実際には不可能です。

------解決策------------------
それなら、それは日食のせいです、彼は物体を識別できないのです実行時にロードされます! ?
千回に斬られてもおかしくない
-----解決策---------
クラスAaのメソッドで後ほど紹介しますconfig.php ファイル
はまだ使用できませんか?

はこのメソッドでは使用できるはずですが、他のメソッドでは使用できません。
------解決策---------
話し合う

その後、クラス Aa
のメソッドに config.php ファイルを導入しましたが、それでも動作しません。

このメソッドでは動作するはずですが、他のメソッドでは動作しません。

-----解決策---------
すごいですね。

ディスカッション

引用:

その後、クラス Aa
のメソッドに config.php ファイルを導入しましたが、それでも機能しませんでした。使用しますか?

はこのメソッドでは使用できるはずですが、他のメソッドでは使用できません。


あなたは xxx のベストですか?
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。