phpでは関数、メソッド、コンストラクタの多重定義(オーバーロード)はできない。
対処法:
1. 関数/メソッドの中で引数の数、種類に応じて処理を分ける
2. 引数は連想配列として、1と同様に連粗配列の内容に応じて処理をわける
3. 似た名前の関数/メソッドを複数作成する
PHP では、関数は参照される前に定義されている必要はありません。 ただし以下の二つの例のように、条件付きで関数が 定義されるような場合を除きます。
次の二つの例のように、ある条件下でのみ関数が定義される場合には、 その関数定義は関数がコールされる前に 行われていなければなりません。
PHP では、関数は参照される前に定義されている必要はありません。 ただし以下の二つの例のように、条件付きで関数が 定義されるような場合を除きます。
次の二つの例のように、ある条件下でのみ関数が定義される場合には、 その関数定義は関数がコールされる前に 行われていなければなりません。
様々な言語の仕様を比較したこの記事も有用。
コメント