如何在MVC编程模型

时间:2018-06-19 02:22:23

标签: php mysql

在我的项目中,我选择了MVC编程模式。

首先,我定义了一个特定的Trade类来从DB中获取数据 ; Trade.php类的代码是:

namespace model;

class Trade Extends \Mysql\Crud {
private $ltb;

public function getLastTradeTime($uid, $ip) {
   //$params = array('uid' => '36998020','ip' => $ip);
   $sql = "SELECT sys_dateline FROM ms_trade WHERE uid=36998020 AND sys_ip='183.62.232.198' ORDER BY id DESC LIMIT 1;";
   $this->ltb = $this->getDb()->query($sql);
   return $this->ltb;// There is only one return value:1528957574
}

}

Trade.php类是extends \ Mysql \ Crud类。

Crud.php类用于连接DA,并创建,更新,删除sql等。

我已经成功地专门测试了Crud.php类的每个功能。

代码Crud.php类是:

<?php
namespace Mysql;
class Crud {

private $db;
protected $fields;
public $variables;

public function __construct($data = array()) {
    if ($this->fields && $data) {
        foreach ($data as $k => $d) {
            if (!in_array($k, $this->fields)) {
                unset($data[$k]);
            }
        }
    }
    $this->variables  = $data;
}

public function setDb($db) {
    $this->db = $db;
}
public function getDb() {
    //connecting function
}

public function __set($name,$value){
    //set value
}

public function __get($name)
{   
    //get value
}

public function save($id = "0") {
    //for saving value
}

public function create() { 
    //for create sql
}

public function delete($id = "") {
    //for delete sql
}
}

现在我有1.php控制页面,用于通过Trade.php类获取数据,

$uid = $login_userinfo['uid'];
$ip = getClientIp();
$trade_model = new \model\Trade();
$lastTrade_time = $trade_model->getLastTradeTime($uid, $ip); //the value should be 1528957574

但是lastTrade的值是&#34;数组&#34 ;; 这似乎没什么不对。谁可以帮我一个忙。

1 个答案:

答案 0 :(得分:1)

它作为一个多维数组返回给你,其中一个元素包含一个带有一个元素的关联数组。

$lastTrade_time[0]['sys_dateline']应该为您提供时间戳。然后通过date()等转换为任何格式,或以您想要的任何方式使用。