
请参考thinkphp开发手册的查询语言一节,可以有不同写法,我这里写一种供你参考:
$where1=array('Key'=>array('like','zt'.'%'),
'code'=>'02'
)
$where=array(
'modes'=>1,
'Key'=>array('like','tm'.'%'),
'code'=>'02',
'_complex'=>$where1, // 复合查询
'_logic'=>'or' // 关系为or
)
// 查询语句
$mysql=M('Mysql')->where($where)->select()
使用快捷查询加入$map['_logic'] = 'OR'
或
$map['id|receiverid'] = array(session('uid'),array('in', implode(",",$idset)),'_multi'=>true)
以上方法等效。
当且与或并存时可以用复合查询,如以下多了一个name
$map['receiverid'] = session('uid')
$map['id'] = array('in', implode(",",$idset))
$map['_logic'] = 'OR'
$where['name'] = 'abc'
$where['_complex'] = $map
M('message') ->where($where)->select()
将生成:
WHERE (`receiverid` = 1 OR `id` IN ('13','12','10','9')) AND `name`='abc'
thinkphp3.x连接mysql数据库的方法。分享给大家供大家参考,具体如下:惯例配置文件:ThinkPHP/conf/convention.php
(1)在配置文件中填写配置信息(配置文件:“./xmall/conf/config.php”):
示例:
<?php return array(//'配置项'=>'配置值'/* 数据库设置 */'DB_TYPE'=>'mysql', // 数据库类型 'DB_HOST'=>'localhost', // 服务器地址 'DB_NAME'=>'xmall', // 数据库名 'DB_USER'=>'root', // 用户名 'DB_PWD'=>'123', // 密码 'DB_PORT'=>'3306', // 端口 'DB_PREFIX'=>'think_', // 数据库表前缀 'DB_FIELDTYPE_CHECK' =>false, // 是否进行字段类型检查 'DB_FIELDS_CACHE' =>true, // 启用字段缓存 'DB_CHARSET' =>'utf8', // 数据库编码默认采用utf8 )?>
(2)创建表:
?12345 CREATE TABLE `think_user` ( `id` int(11) DEFAULT NULL, `name` varchar(30) DEFAULT NULL, `pwd` varchar(20) DEFAULT NULL) ENGINE=InnoDB
(3) 执行数据插入 *** 作在lib/Action下修改IndexAction.class.php文件,内容如下:
<?php class IndexAction extends Action{function index(){ public function index(){$data=array( "id"=>"1", "name="=>"liuning", "pwd"=>"asd123" ) M("user")->add($data) }} } ?>
(4)执行http://localhost/xmall/index.php,数据库中就会有新的记录生成;
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)