swoole gets
控制器调用:
function gets()
{
$model = Model('ap_pic');
$model->select = ' id, size_type ';
$gets['page'] = empty($_GET['page'])?0:intval($_GET['page']);
$gets['pagesize'] = 2;
$gets['where'] = " orders=1381392612 ";
$gets['orwhere'] = " name=1381392612 ";
$pager = 2;
$list = $model->gets($gets, $pager);
echo "<pre>";
var_dump($list);
echo "</pre>";
exit;
}
调用了Model.php
/**
* 获取表的一段数据,查询的参数由$params指定
* @param $params
* @param $pager Pager
* @return Array
*/
public final function gets($params, &$pager=null)
{
if (empty($params))
{
throw new \Exception("no params.");
} $selectdb = new SelectDB($this->db);
$selectdb->from($this->table);
$selectdb->primary = $this->primary;
$selectdb->select($this->select); if (!isset($params['order']))
{
$params['order'] = "`{$this->table}`.{$this->primary} desc";
}
$selectdb->put($params); if (isset($params['page']))
{
$selectdb->paging();
$pager = $selectdb->pager;
} return $selectdb->getall();
}
selectDB.php中 function put($params)
/**
* 将数组作为指令调用
* @param $params
* @return null
*/
function put($params)
{
if(isset($params['put']))
{
Error::info('SelectDB Error!','Params put() cannot call put()!');
}
//处理where条件
if(isset($params['where']))
{
$wheres = $params['where'];
if(is_array($wheres)) foreach($wheres as $where) $this->where($where);
else $this->where($wheres);
unset($params['where']);
}
//处理orwhere条件
if(isset($params['orwhere']))
{
$orwheres = $params['orwhere'];
if(is_array($orwheres)) foreach($orwheres as $orwhere) $this->orwhere($orwhere);
else $this->$orwheres($orwheres);
unset($params['orwhere']);
}
//处理walk调用
if(isset($params['walk']))
{
foreach($params['walk'] as $call)
{
list($key,$value) = each($call);
$this->_call($key,$value);
}
unset($params['walk']);
}
//处理其他参数
foreach($params as $key=>$value)
{
$this->_call($key,$value);
}
}
swoole gets的更多相关文章
- 编译安装PHP7并安装Redis扩展Swoole扩展
编译安装PHP7并安装Redis扩展Swoole扩展 在编译php7的机器上已经有编译安装过php5.3以上的版本,从而依赖库都有了 本php7是编译成fpm-php 使用的, 如果是apache那么 ...
- 使用php+swoole对client数据实时更新(下)
上一篇提到了swoole的基本使用,现在通过几行基本的语句来实现比较复杂的逻辑操作: 先说一下业务场景.我们目前的大多数应用都是以服务端+接口+客户端的方式去协调工作的,这样的好处在于不论是处在何种终 ...
- 使用php+swoole对client数据实时更新(上)
如果想对一个列表做实时的更新,传统的做法是采用轮询的方式.以web为例,通过Ajax定时请求服务端然后获取数据显示在页面.这种方式实现简单,缺点就是浪费资源. HTTP1.1新增加了对websocke ...
- [Linux][PHP]安装swoole扩展
1.下载swoole 2.解压并配置 /usr/local/php/bin/phpize ./configure --enable-swoole-debug --enable-sockets --en ...
- 被swoole坑哭的PHP程序员
被swoole坑哭的PHP程序员 2015-09-16 09:57 文帅营 博客园 字号:T | T 首先说一下对swoole的理解:披着PHP外衣的C程序.很多PHPer朋友看到swoole提供的强 ...
- centos下php安装swoole扩展
官网:http://wiki.swoole.com/wiki/index/prid-1 国内Git镜像:http://git.oschina.net/matyhtf/swoole.git 下载源码后, ...
- windows php swoole 安装
Cygwin 官方地址:http://www.cygwin.com/ swoole 官方下载地址:https://github.com/swoole/swoole-src/releases 1.下载 ...
- Linux下swoole的安装配置
前几天搭建swoole环境,在安装php的swoole扩展时不知道什么原因,提示成功,但是使用的时候不能加载,最后决定重新安装php试试,顺便记录了php的安装过程 wget http://cn2.p ...
- 简单的聊天室代码php+swoole
php swoole+websocket 客户端代码 <!DOCTYPE html> <html> <head> <title></title&g ...
- swoole 使用 1
在很长的一段时间里,我不太看好swoole,发现它的文档太少,社区也不够活跃等,但是最近在学习 Hprose时,发现swoole在rpc方面做得更加完善,于是决定看看. 在简单的使用swoole扩展后 ...
随机推荐
- linux系统socket通信编程详解函数
linux socket编程之TCP与UDP TCP与UDP区别 TCP---传输控制协议,提供的是面向连接.可靠的字节流服务.当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之 ...
- js方法区分IE浏览器和非IE浏览器
可以从IE特有的方法和非IE特有的方法来区分不同的浏览器 1.为元素添加事件监听: 非IE:.addEventListener("click",show,false)//第三个参数 ...
- OpenStack三个节点icehouse
一.环境准备 1.架构 创建3台虚拟机,分别作为controll节点.network节点和compute1节点. Controller节点:1processor,2G memory,5G storag ...
- iGson
头文件 #import <Foundation/Foundation.h> #import <objc/runtime.h> #import "NSString+Ut ...
- ubuntu14.04 LTS 搜狗输入法安装和不能输入中文的解决方法
搜狗输入法安装 1.首先通过Ubuntu软件中心,需要安装:fcitx https://pinyin.sogou.com/linux/help.php 2.然后再安装搜狗输入法包 https://pi ...
- 日志记录---log4j详解
Apache官方项目地址 通常的日志记录的缺点是会减慢程序的运行速度,如果用普通的System.out的话影响视觉效果,另外解耦度也不好,而log4j的设计则使得日志记录变得可靠快速和可拓展性好. l ...
- 修改MySQL命令提示符
当前session可以直接用prompt修改 mysql> prompt \u@\h \d \r:\m:\s>PROMPT set to '\u@\h \d \r:\m:\s>'ro ...
- maven学习(二)(转)
一.maven父工程与子模块的拆分与聚合原理 问题描述:将ssh工程拆分为多个模块开发 1.1.拆分原理 创建一个maven project(pom),然后在创建三个子模块(maven moudule ...
- Composer 添加 Laravel-china 的国内源
不知道由于什么原因,原来的 Composer 的国内镜像 https://pkg.phpcomposer.com/ 不能正常使用,经常连不上. 找了半天,发现还有一个 laravel-china 的国 ...
- couldn't connect to host
“couldn't connect to host” 这样的错误可能是主机不可到达,或者端口不可到达. ping OK只代表主机可以到达. 端口不可到达可能是由于HTTP 服务器未启动或者监听在其他端 ...