0

私はcodeigniterのチュートリアルをいくつか行っており、いくつかの基本的なことでイライラしています。

私はという名前のモデルを持っていますmath.php

 <?php

class math extends CI_Model{
    public function add($val1, $val2){
        return $val1 + $val2;
    }
}

このモデルは、という名前のコントローラーによって呼び出されますsite.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Site extends CI_Controller {

    public function index()
    {
        echo "Hi Internet<br> ";
        $this->addStuff();
    }

    public function addStuff()
    {
        $this->load->model("math");
        echo $this->math->add(2,2);
    }
}

これは完全に機能します。ただし、わかりやすくするために、名前を次のように変更math.phpしますmodel_math.php

これは明らかにページを壊します。

私の質問は、私のコントローラーでは、site.php

$this->load->model("model_math");

echo $this->model_math->add(2,2);

これmodel_mathは物理phpファイルを参照し、物理モデルphpファイル内で作成したクラス名を参照しますか?

のモデルクラス名mathと「model_math.php」の物理phpファイル名で動作させることができません

4

1 に答える 1

0

Codeigniterでは、クラスにPHPファイル名と同じ名前を付ける必要があります。PHPファイルの名前が「model_math.php」でファイルに含まれている場合、エラーが発生します。

Class Math extends CI_Model

Codeigniterの制限私は推測します...しかし、同じ規則(つまり、名前_model.php;名前_controller.php)でそれらに名前を付けることによって、すべてのモデルとコントローラーを標準化することは害にはなりません。クラスに同じ名前を付ける必要があります。

于 2013-02-18T15:48:51.897 に答える