4

私は CodeIgniter 2.1.2 を使用していますが、これが私の現在の状況です。に math.php という名前のモデルがありC:\wamp\www\cr8v\application\modelsます。これをコントローラーにロードしようとしてC:\wamp\www\cr8v\application\controllers\site.phpいますが、このエラーが発生しています:

指定したモデルが見つかりません: math_model

の内容は次のmath.phpとおりです。

 <?php
    class Math_model extends CI_Model(){
        public function add(){
            return 1+1;
        }
    }
 ?>

そして、ここに私のコンテンツがありますsite.php

<?php
    class Site extends CI_Controller{
        public function index(){
            $this->addstuff();
        }

        public function addstuff(){
            $this->load->model("math_model");
            echo $this->math->add();
        }
    }  
?>

YouTube のチュートリアルでこれに従いました。それでも、それは私の望む出力を与えません。私はそれについてグーグルを試し、これに関連する他の質問を読みましたが、それらの情報は十分ではありません.

私はこれを少し前に読みました。

今、私は次のエラーがあります:

( ! ) Parse error: syntax error, unexpected '(', expecting '{' in C:\wamp\www\cr8v\application\models\math_model.php on line 2
Call Stack
#   Time    Memory  Function    Location
1   0.0036  148768  {main}( )   ..\index.php:0
2   0.0062  185072  require_once( 'C:\wamp\www\cr8v\system\core\CodeIgniter.php' )  ..\index.php:202
3   0.0561  784312  call_user_func_array ( )    ..\CodeIgniter.php:359
4   0.0561  784360  Site->index( )  ..\CodeIgniter.php:359
5   0.0561  784376  Site->addstuff( )   ..\site.php:4
6   0.0561  784504  CI_Loader->model( ) ..\site.php:8
4

5 に答える 5

14

名前はすべての場所で同じである必要があります。

ここ:

class Math_model extends CI_Model {
   // your model
}

ここ:

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

使用する場合:

$this->math_model->add();

そして:あなたのファイルシステムで。したがって、名前を変更math.phpするmath_model.phpと機能します。

于 2012-06-30T19:07:59.720 に答える
3

ファイルの名前は math_model.php で、次のように呼び出す必要があります。

echo $this->math_model->add();
于 2012-06-30T19:08:41.553 に答える
0

質問は実際に回答されており、問題は次のとおりです。

 <?php
    class Math_model extends CI_Model(){
        //so on
        } 
 ?>

..それは、クラスを宣言した後の開始および終了の括弧です..次のようにする必要があります。

 <?php
    class Math_model extends CI_Model{
        //so on
        } 
 ?>

答えてくれた人どうもありがとう

于 2012-06-30T19:19:46.767 に答える