首頁 >後端開發 >php教程 >php模型里调用函数和直接调用还有区别么?

php模型里调用函数和直接调用还有区别么?

WBOY
WBOY原創
2016-06-06 20:11:531011瀏覽

<code><?php class newsModel{
    function count(){
        $sql = "SELECT * FROM admin";
        $result = mysql_query($sql);
    return $num=mysql_num_rows($result);
    }
}</code></code>

先是这了一个count函数,想返回数据库条数的。直接调用这个函数的时候返回正确值。

<code>    function index(){
        $newsobj=M('news');
        $newsnum=$newsobj->count();
        //print_r ($newsnum);
        VIEW::assign(array('newsnum'=>$newsnum));
        VIEW::display('admin/index.html');
    }</code>

但如果这样调用就全是0了。为什么呐? 这两种方法有什么区别吗?
如果在模型里调用那该怎么写呢?

回复内容:

<code><?php class newsModel{
    function count(){
        $sql = "SELECT * FROM admin";
        $result = mysql_query($sql);
    return $num=mysql_num_rows($result);
    }
}</code></code>

先是这了一个count函数,想返回数据库条数的。直接调用这个函数的时候返回正确值。

<code>    function index(){
        $newsobj=M('news');
        $newsnum=$newsobj->count();
        //print_r ($newsnum);
        VIEW::assign(array('newsnum'=>$newsnum));
        VIEW::display('admin/index.html');
    }</code>

但如果这样调用就全是0了。为什么呐? 这两种方法有什么区别吗?
如果在模型里调用那该怎么写呢?

M 函数的 mode 必须 实现extends Model

count 已经在 Model 中实现了,没必要在写一边,如果非要自己实现可以用

return $this->count(); 来返回

题主可以先去了解下M方法跟D方法的区别,还有熟悉下tp框架的连贯操作有哪些。避免重复定义方法。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn