首页 > 其他 > 详细

对于社保截止日接口的学习记录---在yii1.1中公共service层对model层的调用

时间:2015-05-14 14:14:33      阅读:232      评论:0      收藏:0      [点我收藏+]

需要明确的一点,sql语句或者yii自带的find和findall方法这些操作,都需要放在model层,在对应的model里面创建一个方法。写上这些sql语句,有三个例子:
1.这个方法是通过截止日期来获取城市的信息。

/**
*根据截止日期来获取城市信息
*@paramarray$deadline_day社保截止日期
*@returnarray
*@authorxcz
*/
publicfunctiongetCityDataByDeadline($deadline_day){
    $sql="SELECTarea_id,city_nameFrom{{city_data}}wheredeadline_day=".$deadline_day;
    $command = Yii::app()->db->createCommand($sql);
    $city_data = $command->queryAll();

    return $city_data;
}

2.还有在model层使用多表查询的sql语句的写法,使用join的方式来进行多表的连接

Public function getCompanyInfo($c_id){
    $sql="SELECTc.c_name,c.main_user,ci.mailascompany_mail,ci.phoneascompany_phone,a.uid,a.user_id,a.phoneasmain_user_phone,a.mailasmain_user_mailFrom{{company}}cjoin{{company_info}}cijoin{{admin}}awherec.c_id=ci.c_idandc.c_id=a.c_idandc.c_id=".$c_id;
    $command=Yii::app()->db->createCommand($sql);
    $company_data=$command->queryAll();
    return $company_data;
}

3.因为我们有两个数据库,一个是shopnctest数据库,一个是joyotest数据库,然后如果我想调用数据库shopnctest里面的member表的信息,只有通过model层里的member模型里的找主键的方法。然后根据member_id来查找对应member_id的数据。

Public function getMemberById($id){
    return ShopncMemberModel::model()->findByPk($id,‘member_state=1‘);
}

然后再公共service层,采用如下的的方式对model层的方法进行调用。

$city_data=CityDataModel::model()->getCityDataByDeadline($d);

调用的数据需要通过isset的判断。

如果通过第三种方法调用到的数据的话,可以用两种方式进行调用。
获取的数据是一个对象的类型,所以$member_data->member_mobile这种方式就能对对象的数据进行调用。

另一个是memberdata=member->attributes; 这种方式调用的话,会将获取的数据转化为数组的形式,$member_data[‘member_mobile’]然后用这种方式就可以调用的。

对于社保截止日接口的学习记录---在yii1.1中公共service层对model层的调用

原文:http://blog.csdn.net/rodgexue/article/details/45719661

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!