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扩展后 ...
随机推荐
- Java精选笔记_Java入门
Java概述 什么是Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言 JavaSE标准版 是为开发普通桌面和商务应用程序提供的解决方案 JavaEE企业版 是为开发企业级应用程序提供的解 ...
- thinkphp nginx+phpcgj安装配置
环境:mysql-5.6.26 nginx-1.9.4.tar.gz php-5.6.13 程序框架ThinkPHP 客户要求必须使用nginx + php 1.首先安装n ...
- Python 文件类型
Python的文件类型分为以下几种: 1. 源代码文件,也就是以 .py 为扩展名的文件,由 python 程序解释,不需要编译 2. 字节代码文件,python 源代码文件经过编译后生成的扩展名为 ...
- STM32学习之路之MDK安装篇
- 我们复习.Net的这些日子里
今天是我们复习前面学习的第三天,也是在今天我们结束了复习.之前上学时间感觉知识全是生僻的,在生活中很少用到,因此喜欢重复的记忆,而现在学习的知识全是现在乃至未来,将是每天我们使用的,所以就感觉没必要重 ...
- php学习五:数组操作
前言:由于之前接触过js,所以在学习php的时候,里面继承了js的许多方法,所以数组里面的许多操作和js很相似,但是却比js里面多的多,个人感觉php是集成数组方法最多的一个 ,今天学习的有二十余个, ...
- Android 命令行打包和签名
使用命令行方式进行签名需要JDK中的两个命令行工具:keytool.exe和jarsigner.exe.可按如下两步对apk文件进行签名: 1. # keytool -genkey -v -keyst ...
- Cookie/Session机制详解 <转>
会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端 ...
- Python 之定时器
#引入库 threading import threading #定义函数 def fun_timer(): print('hello timer') #打印输出 global timer #定 ...
- loading图标modal弹窗 和jquery ajax的关系
在ajax配置中 ,async:false,非异步,modal窗口会失效,只有重新设置为async:true,或者删除async的设置,则loading的模态框才能展示出来 loading图标的模态框 ...