php 数组动态添加实现代码(最土团购系统的价格排序)
<?php
$now=time();
$oc = array(
'team_type' => 'normal',
"begin_time < '{$now}'",
"end_time > '{$now}'",
);
$p="p2";
$pp1="";
$pp2="";
$now = time();
switch ($p)
{
case "p1":
$pp1="team_price < 10";
$pp2="";
break;
case "p2":
$pp1="team_price > 10";
$pp2="team_price < 50";
break;
case "p3":
$pp1="team_price > 50";
$pp2="team_price < 100";
break;
case "p4":
$pp1="team_price > 100";
$pp2="team_price < 200";
break;
case "p5":
$pp1="team_price > 200";
$pp2="";
break;
default:
$pp1="";
$pp2="";
}
if(!empty($pp1)){
array_push($oc,$pp1);
}
if(!empty($pp2)){
array_push($oc,$pp2);
}
print_r($oc);
?>
因为是多条件查询所以需要先判断是否为空,然后再添加到数组里面。
相关推荐
-
php对二维数组进行排序的简单实例
本文介绍下,php中使用array_multisort函数进行二维数组排序的例子,有需要的朋友,参考下吧.继上一篇文章:PHP二维数组排序自定义函数,今天,我们再介绍一个php二维数组排序的例子.php对二维数组的排序很简单,主要用到array_multisort函数.例子: 复制代码 代码如下: <?php /** * php二维数组排序 * edit www.jb51.net*/ $data = array(); $data[] = array('volume' => 67
-
php二维数组排序方法(array_multisort usort)
例如像下面的数组: 复制代码 代码如下: $users = array( array('name' => 'tom', 'age' => 20) , array('name' => 'anny', 'age' => 18) , array('name' => 'jack', 'age' => 22)); 希望能按照age从小到大进行排序.笔者整理了两个方法出来,分享给大家. 1.使用array_multisort 使用这个方法,会比较麻烦些,要将age
-
不使用php api函数实现数组的交换排序示例
复制代码 代码如下: $arr = array(900 , 20 , 16 , 50 , -2 , 10 , 3);$min = $max = 0; for ($j=0;$j<count($arr);$j++){ for($i=0;$i<count($arr)-1;$i++){ if($arr[$i] > $arr[$i+1]){ $min = $arr[$i+1]; $arr[$i+1] = $arr[$i]; $arr[$i] = $min; } } echo &qu
-
一个PHP二维数组排序的函数分享
二维数组在PHP开发中经常遇到,但是他的排序就不如一维数组那样用内置函数来的方便了,二维数组的排序需要我们自己写函数处理了,这里UncleToo给大家分享一个PHP二维数组排序的函数: 代码: 复制代码 代码如下: functionarray_sort($arr,$keys,$type='asc'){ $keysvalue= $new_array= array(); foreach($arras$k=>$v){ $keysvalue[$k] = $v[$keys]; } if($type== '
-
php中的一些数组排序方法分享
A.内部排序(直接加载到内存进行排序):包括交换式排序(冒泡和快速法).选择式排序.插入式排序 B.外部排序(因数据量大,需借助外部存储进行排序):包括合并排序.直接合并排序 [冒泡排序:从后向前,依次比较相邻元素的排序码,若发现逆序则交换,一轮结束后,再来一轮,直到所有相邻数无逆序,即按顺序排完] 复制代码 代码如下: function maoPao($arr,$style)//[默认传递的是值,不是地址.如果在$arr前加个&,则和$arr1指向同一个地址,函数外的$arr1也被排好了] {
-
php二维数组排序与默认自然排序的方法介绍
php二维数组排序函数,默认自然排序,即sort排序.这里可以指定按二维数组中的某个值进行多种方法排序,具体看下面的程序注释. 复制代码 代码如下: /** * @function 二维数组自然排序 * @author www.phpernote.com * @param array $array 需要排序的数组(二维) * @param string key 需要根据哪个键排序 * @param string order 排序方式(SORT_ASC,SORT_DESC) * @param st
-
php对数组排序的简单实例
复制代码 代码如下: <?php class='pingjiaF' frameborder='0' src='http://www.jb51.net' scrolling='no'> 对数组排序 usort() 函数使用用户自定义的函数对数组排序. */ function cmp($a, $b) //用户自定义回调函数 { if($a==$b) //如果两个参数相等 { return 0; //返回0 } return($a>$b)?-1:1; //如果第1个参数大于
-
php数组函数序列之krsort()- 对数组的元素键名进行降序排序,保持索引关系
krsort()定义和用法 krsort() 函数将数组按照键逆向排序,为数组值保留原来的键. 可选的第二个参数包含附加的排序标志. 若成功,则返回 TRUE,否则返回 FALSE. 语法 krsort(array,sorttype)参数 描述 array 必需.规定要排序的数组. sorttype 可选.规定如何排列数组的值.可能的值: SORT_REGULAR - 默认.以它们原来的类型进行处理(不改变类型). SORT_NUMERIC - 把值作为数字来处理 SORT_STRING - 把
-
PHP 多维数组的排序问题 根据二维数组中某个项排序
PHP内置函数 array_multisort 要求每个数组大小一样 $areas是地区的二维数组,包含人数和次数,现在要按这2种数进行降序排序 复制代码 代码如下: foreach($areaArray as &$areas) { $times = $numbers = array(); foreach($areas as $province => $v) { $times[$province] = $v['times']; $numbers[$province] = $v['number
-
php比较多维数组中值的大小排序实现代码
如果值没有重复的情况,可以先用array_flip()来交换键和值,然后krsort(),最后再array_flip()交换回来,就可以比较大小了.如果要截取数组,可用array_slice(). 如果有值重复的情况,就要用到一些排序算法了,不过php有很强大的函数uasort(),使用自定义的比较函数对数组中的值进行排序并保持索引关联,usort()则会重建索引. 复制代码 代码如下: function cmp($a, $b){ if ($a["vote_num"] == $b[&q
-
PHP中数组的三种排序方法分享
一.冒泡排序法 说明:找到最大的数,排列到最后面,然后继续找 例: 复制代码 代码如下: $arr = array(3,5,-1,0,2); for($i=0;$i<count($arr)-1;$i++){ for($j=0;$j<count($arr)-1-$i;$j++){ if($arr[$j]>$arr[$j+1]){ $temp = $arr[$j]; $arr[$j]=$arr[$j+1]; $arr[$j+1]=$temp; } } } 理解: 3,5,-1,0,2 //从
-
解析PHP中数组元素升序、降序以及重新排序的函数
1,快速创建数组的函数range()比如range()函数可以快速创建从1到9的数字数组: 复制代码 代码如下: <?php $numbers=range(1,9);echo $numbers[1];?> 当然,使用range(9,1)则创建了9到1的数字数组.同时,range()还可以创建从a到z 的字符数组: 复制代码 代码如下: <?php $numbers=range(a,z);foreach ($numbers as $mychrs) echo $mychrs."
-
PHP 冒泡排序 二分查找 顺序查找 二维数组排序算法函数的详解
数据结构很重要,算法+数据结构+文档=程序使用PHP描述冒泡排序算法,对象可以是一个数组 复制代码 代码如下: //冒泡排序(数组排序)function bubble_sort($array) {$count = count($array);if ($count <= 0)return false;for($i=0; $i<$count; $i++){for($j=$count-1; $j>$i; $j–){if ($array[$j] < $array[$j-1]){$tmp =
-
php对二维数组按指定键值key排序示例代码
复制代码 代码如下: function array_sort($array, $key){ if(is_array($array)){ $key_array = null; $new_array = null; for( $i = 0; $i < count( $array ); $i++ ){ $key_array[$array[$i][$key]] = $i; } ksort($key_array); $j = 0; foreach($key_array as $k => $v){ $ne
-
PHP二维数组排序的3种方法和自定义函数分享
关于排序一般我们都是通过数据库或者nosql(eg:redis)先排好序然后输出到程序里直接使用,但是有些时候我们需要通过PHP直接来对数组进行排序,而在PHP里存储数据用到最多的就是对象和数组,但处理较多的就是数组,因为有非常丰富的内置函数库(其实对象一定程度上也可以理解为是数组),这些函数库很大程度上可以帮助我们实现某些功能.常用的系统函数有sort.asort.arsort.ksort.krsort等等,这里我主要说下对二维数组的排序,两种方法: 一.用PHP自带array_multiso
-
php对数组排序代码分享
复制代码 代码如下: <?php class='pingjiaF' frameborder='0' src='http://www.jb51.net' scrolling='no'> 对数组排序 usort() 函数使用用户自定义的函数对数组排序. */ function cmp($a, $b) //用户自定义回调函数 { if($a==$b) //如果两个参数相等 { return 0; //返回0 } return($a>$b)?-1:1; //如果第1个参数大于
-
php二维数组排序详解
有时候为了达到一定目的,需要对二维数组进行排序,现分享一下其实现的方法. 复制代码 代码如下: $arr=array ('1' => array ( 'date' => '2011-08-18', 'num' => 5 ) ,'2' => array ( 'date' => '2011-08-20', 'num' => 3 ) ,'3' => array ( 'date' => '2011-08-17', 'num' => 10 ) ) ; $res
-
PHP数组排序函数合集 以及它们之间的联系分析
下边提到的几个数组函数的排序有一些共性:1 数组被作为排序函数的参数,排序以后,数组本身就发生了改变,函数的返回值为bool类型.2 函数名中出现单a表示association,含义为,在按值排序的过程中,保持key=>value的对应关系不变3 函数名中出现单k表示key,含义为,在按值排序的过程中按照数组key而不是数组的值排序4 函数名中出现单r的表示reverse,含义为,按照跟不加r的相反的顺序排列5 函数名中出现单u的表示user-defined,含义为,使用用户自定义函数排序,如果
随机推荐
- JS截取字符串常用方法详细整理
- Angular的事件和表单详解
- Access使用宏控制程序
- 使用React实现轮播效果组件示例代码
- php preg_replace替换实例讲解
- MySQL OOM 系列一 Linux内存分配
- JavaScript仿微博输入框效果(案例分析)
- 管理员登录设计(第7节)
- 深入Android开发FAQ的详解
- SQL Server 2005 模板参数使用说明
- 用python + hadoop streaming 分布式编程(一) -- 原理介绍,样例程序与本地调试
- JavaScript事件处理程序(事件侦听器)
- jQuery实现调整表格单列顺序完整实例
- jQuery中实现动画效果的基本操作介绍
- Win 2003两种自动登录的方法
- asp.net动态添加js文件调用到网页的方法
- C++ 中String 替换指定字符串的实例详解
- Php output buffering缓存及程序缓存深入解析
- php防注入,表单提交值转义的实现详解
- 浅谈springfox-swagger原理解析与使用过程中遇到的坑