Model::findBy{フィールド名}() の落とし穴

CakePHP の Model には、任意のフィールドからレコードを検索する Model::findBy{フィールド名}() というマジックメソッドがありますが、 PHP4 では関数名の大文字小文字を区別しないため、フィールド名に単語を2つ以上用いている場合に注意が必要です。

たとえば user_id というフィールドから目的のレコードを検索する際、 PHP5 では…

<?php
$model->findByUserID();
?>

…と、書きますが、 PHP4 では…

<?php
$model->findByUser_ID();
?>

…と、アンダーバーを残して書く必要があります。

トップへ  |  上の階層へ

トップページへ戻る / 前のページへ戻る

back to top