PHP生成Json,非系统函数

<?php
//文件名:photo.php?page_size=10&page_index=2
$arr_len = 50;

if (isset($_GET['page_size']) && isset($_GET['page_index'])){
	$page_size = (int)trim($_GET['page_size']);
	$page_index = (int)trim($_GET['page_index']);
	
	$return_arr = get_data($page_size, $page_index, $arr_len);
	$result=array('total'=>$arr_len,'list'=>$return_arr);
	echo json_encode($result);
}

/*数据处理*/
function get_data($page_size=10, $page_index=1, $len){
	//生成数组
	$list = array();
	for($i=1; $i<=$len; $i++){
		$pic = "{$i}.jpg";
		$pic_name = "name{$i}";
		$list[] = array($i, $pic, $pic_name);
	}
	if(!empty($page_size) && !empty($page_index)){
		$pic_num = count($list);
		$page_num = (int)ceil($pic_num/$page_size);
		$num = $page_size * $page_num;
		//如果如果页码小于0或者大于分页数则返回空数组
		if ($page_index <=0 || $page_index > $page_num){
			return array();
		}
		//如果分页要显示数量大于后台总数则返回所有结果
		if($page_size>=$pic_num) return $list;
		//如果最后一页不够每页显示数量则只返回实际条数的数组
		if($num > $pic_num && $page_index == $page_num){
			$last_page_num = $pic_num-$page_size*($page_num-1);
			for($i=0;$i<$last_page_num;$i++){
				$arr[] = $list[rand(0, $len-1)];
			}
			return $arr;
		}
		//正常情况下返回特定长度数组
		for($i=0;$i<$page_size;$i++){
			$arr[] = $list[rand(0, $len-1)];
		}
		return $arr;
	}else{
		return array();
	}
}



// $list=array(
// 	array('1','1.jpg','name1'),
// 	array('2','2.jpg','name2'),
// 	array('3','3.jpg','name3'),
// 	array('4','4.jpg','name4'),
// 	array('5','5.jpg','name5'),
// 	array('6','6.jpg','name6'),
// 	array('7','7.jpg','name7')
// );
?>

<?php
//文件名:photo.php?page_size=10&page_index=2
$arr_len = 50;

if (isset($_GET['page_size']) && isset($_GET['page_index'])){
	$page_size = (int)trim($_GET['page_size']);
	$page_index = (int)trim($_GET['page_index']);
	
	$return_arr = get_data($page_size, $page_index, $arr_len);
	$result=array('total'=>$arr_len,'list'=>$return_arr);
	echo json_encode($result);
}

/*数据处理*/
function get_data($page_size=10, $page_index=1, $len){
	//生成数组
	$list = array();
	for($i=1; $i<=$len; $i++){
		$pic = "{$i}.jpg";
		$pic_name = "name{$i}";		
		$list[] = array("id"=>$i, "pic"=>$pic, "pic_name"=>$pic_name);
	}
	if(!empty($page_size) && !empty($page_index)){
		$pic_num = count($list);
		$page_num = (int)ceil($pic_num/$page_size);
		$num = $page_size * $page_num;
		//如果如果页码小于0或者大于分页数则返回空数组
		if ($page_index <=0 || $page_index > $page_num){
			return array();
		}
		//如果分页要显示数量大于后台总数则返回所有结果
		if($page_size>=$pic_num) return $list;
		//如果最后一页不够每页显示数量则只返回实际条数的数组
		if($num > $pic_num && $page_index == $page_num){
			$last_page_num = $pic_num-$page_size*($page_num-1);
			for($i=0;$i<$last_page_num;$i++){
				$arr[] = $list[rand(0, $len-1)];
			}
			return $arr;
		}
		//正常情况下返回特定长度数组
		for($i=0;$i<$page_size;$i++){
			$arr[] = $list[rand(0, $len-1)];
		}
		return $arr;
	}else{
		return array();
	}
}



// $list=array(
// 	array('1','1.jpg','name1'),
// 	array('2','2.jpg','name2'),
// 	array('3','3.jpg','name3'),
// 	array('4','4.jpg','name4'),
// 	array('5','5.jpg','name5'),
// 	array('6','6.jpg','name6'),
// 	array('7','7.jpg','name7')
// );
?>

知识共享许可协议
《PHP生成Json,非系统函数》常伟华 创作。
采用 知识共享 署名-相同方式共享 3.0 中国大陆 许可协议进行许可。
相邻依据:发表时间
  • 多说评论
  • 签名
  • 新浪微博
  • 默认评论
  • Tab Header 5

0 条评论 / 点击此处发表评论

Tab Content 5

开发技术


开发平台和工具

sitemap     160.71ms