質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

238閲覧

使用しているメソッドの実装箇所が検索しても見つからない

monster1012

総合スコア82

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2014/02/10 02:41

eclipseを使用してPHPプロジェクト内で使用されているメソッドを探しているのですが、
プロジェクト内にメソッドの定義が見つかりません。

ですが、実際にはプログラムは動きます。
どういうことなのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

質問の内容からははっきりと答えは出せませんが、
下記の2点について、ご確認してはいかがでしょうか?

1つ目はPEARライブラリです。
プロジェクトソース内には定義がありませんので、
もし該当箇所がPEARのライブラリを使用している場合は、
こちらをご確認ください。

2つ目はマジックメソッドの1つである_call()メソッドです。
PHPではオーバーロードと呼ばれていますが、
_call()を使用すると、実際にメソッド名が定義されていない場合でも、
エラーにならず実行されます。

例えば下記のコードを例にすると

class A extends B { public function main() { $i = array(10, 12); echo $this->add($i); } } class B { protected function _call($method, $params) { switch($method) { case 'add': $res = $params[0] + $params[1]; break; case 'deg'; $res = $params[0] - $params[1]; break; default: $res = NULL; break; } return $res; } }
$this->add()というメソッドは存在しませんが、
実際には計算結果が得られます。

_call()は動的にメソッドを生成することができる特殊なメソッドになります。
メソッド名が検索できない場合は、上記のような記述がないか確認して見てください。

投稿2014/03/18 00:39

dai5566

総合スコア57

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問