我有一个简单的模型,它添加2个数字作为参数给出但是看起来好像内置函数add()没有得到识别。
这是模型
<?php
class SimpleMaths extends CModel{
private $numberone;
private $numbertwo;
public function SimpleMaths($numberones,$numbertwos){
$numberone = $numberones;
$numbertwo = $numbertwos;
}
public function add()
{
return $numbertwo + $numberone;
}
public function attributeNames(){
return array('number 1' => $numberone, 'number 2'=> $numbertwo);
}
}
?>
这是控制器:
<?php
class BlogController extends Controller{
public function actionIndex(){
$none = $_GET['n1'];
$ntwo = $_GET['n2'];
$model = new SimpleMaths($ntwo,$none);
// $sum = $model.add();
$array = get_class_methods('SimpleMaths');
$this->render("index",array("interesting"=>$array,"model"=>$model));
}
}
?>
这是视图
<?php
echo "Hello World";
foreach($interesting as $one)
{
echo $one."<br>";
echo "<hr>";
echo $model.add();
}
?>
add函数显示为其中一个函数,但是当调用它时它只是隐藏自己?
这是错误:
Fatal error: Call to undefined function add() in C:\wamp\www\testdrive\protected\views\blog\index.php on line 8
答案 0 :(得分:2)
在您显示的代码中,就像您想要echo
$model
这是一个对象,然后附加任何函数add()
返回给它,
您需要将其更改为
echo $model->add();