首先,首页:
<form name="form1" id="form1" action="http://127.0.0.1/tp5/public/user/info/do_save" method="post">
兴趣爱好<br>
<input name="shobby[]" type="checkbox" value="1"> 电脑<br>
<input name="shobby[]" type="checkbox" value="2">足球<br>
<input name="shobby[]" type="checkbox" value="3">篮球<br>
<input name="shobby[]" type="checkbox" value="4">电影<br>
<input name="shobby[]" type="checkbox" value="5">音乐<br>
<input name="shobby[]" type="checkbox" value="6">LOL<br>
<input name="shobby[]" type="checkbox" value="7">王者荣耀<br>
<input name="shobby[]" type="checkbox" value="8">汽车<br>
<input type="submit" value="提交">
</form>
控制器类 info 下save方法:
$s_hobby=Request::instance()->post('shobby/a'); // /a是用来获取数组的
if($s_hobby!=null){ // 如果不为空
for($i=0;$i<count($s_hobby);$i++){ // 数组转换成字符串
$topicid.= $s_hobby[$i];
}
}
else{
$topicid='0';
}
$user = new User; //模型实例化
$data=[ 's_hobby' => $topicid ];
$user->save($data);
model下转换
public function getSHobbyAttr($value) // 不用设置,从数据库里读取就自动转换,方法名对应数据库列名,这里是驼峰法命名
{
$w = '';
$j = 0;
//$a=count($value)
$hobby=array(); // 把hobby转换成数组
$hobby= str_split($value,1); //把字符串分割到数组中
$hob = array(1=>"电脑",2=>"足球",3=>"篮球",4=>"电影",5=>"音乐",6=>"lol",7=>"王者荣耀",8=>"汽车");
for($i=0;$i<count($value)+1;$i++){
$j=$hobby[$i];
$w.= $hob[$j];
}
return ($w);
}