扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
$ary = array("直辖市"=array("北京","天津","上海","重庆"),
创新互联是专业的阳原网站建设公司,阳原接单;提供做网站、网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行阳原网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
"江苏省"=array("南京","苏州","南通","常州"),
);
//这样就是一个二维数组
//我们使用的时候可以用foreach进行遍历
foreach($ary as $k=$v) {
echo "{$k}:";
foreach($v as $m) {
echo "{$m},";
}
echo "br\r\n";
}
不知道这样的代码你能否看得懂?不明白再问吧。
js 代码
functionshowJSON() {
varuser =
{
"username":"tom",
"age":20,
"info": {"tel":"123456","cellphone":"98765"},
"address":
[
{"city":"shanghai","postcode":"201203"},
{"city":"suzhou","postcode":"200000"}
]
}
alert(user.username);
alert(user.age);
alert(user.info.cellphone);
alert(user.address[0].city);
alert(user.address[0].postcode);
}
修改
user.username ="jerry";
可以使用eval来转换JSON字符到Object
functionmyEval() {
varstr = '{"name":"Violet","occupation":"character"}';
varbj = eval('(' + str + ')');
alert(obj.toJSONString());
}
或者使用parseJSON()方法
functionmyEval() {
varstr = '{"name":"Violet","occupation":"character"}';
varbj = str.parseJSON();
alert(obj.toJSONString());
}
decode之后就是个二维数组啦,按平常二维数组使用就行的。
如果是想把二维数组存进数据库建议你使用 serialize 这个函数,取出来在 unserialize 下,类型和结构都不会丢失。
复杂的数组排序可以用自定义的排序规则
?php
$arr = array(
0 = array('id' = '2014347856', 'name' = '张甜', '科目' = '语文', 'tag' = '期中考试', '成绩' = '142'),
1 = array('id' = '2014347856', 'name' = '张甜', '科目' = '数学', 'tag' = '期中考试', '成绩' = '98'),
2 = array('id' = '2014347856', 'name' = '张甜', '科目' = '英语', 'tag' = '期中考试', '成绩' = '118'),
3 = array('id' = '2014347856', 'name' = '张甜', '科目' = '化学', 'tag' = '期中考试', '成绩' = '78'),
4 = array('id' = '2014347856', 'name' = '张甜', '科目' = '物理', 'tag' = '期中考试', '成绩' = '132'),
5 = array('id' = '2014347856', 'name' = '张甜', '科目' = '生物', 'tag' = '期中考试', '成绩' = '115'),
6 = array('id' = '2014347856', 'name' = '张甜', '科目' = '地理', 'tag' = '期中考试', '成绩' = '99'),
7 = array('id' = '2014347856', 'name' = '张甜', '科目' = '历史', 'tag' = '期中考试', '成绩' = '88'),
8 = array('id' = '2014347856', 'name' = '张甜', '科目' = '政治', 'tag' = '期中考试', '成绩' = '125'),
9 = array('id' = '2014347880', 'name' = '李鸣', '科目' = '语文', 'tag' = '期中考试', '成绩' = '79'),
10 = array('id' = '2014347880', 'name' = '李鸣', '科目' = '数学', 'tag' = '期中考试', '成绩' = '148'),
11 = array('id' = '2014347880', 'name' = '李鸣', '科目' = '英语', 'tag' = '期中考试', '成绩' = '142'),
);
/*自定义排序*/
function userSort($a, $b)
{
if ($a['name'] == $b['name']) {
/*排序科目*/
$subjectSort = array('语文', '数学', '英语', '历史', '政治', '地理', '物理', '化学', '生物');
foreach ($subjectSort as $index = $item) {
if ($a['科目'] == $item) {
$tmp1 = $index;
}
if ($b['科目'] == $item) {
$tmp2 = $index;
}
}
return $tmp1 $tmp2 ? -1 : 1;
} else {
/*排序name*/
$tmpArr = [$a['name'], $b['name']];
sort($tmpArr);
return $a['name'] == $tmpArr[0] ? -1 : 1;
}
}
usort($arr, 'userSort');
var_dump($arr);
请确定你说的二维数组的样式,是这样的?:
array('name1'='value1','name2'='value2');
或者是这样的?:
array(
array('name1'='value1','name2'='value2'),
array('name1'='value3','name2'='value4')
);
没太看明白你写的什么意思
一般做分页都是先对总的数据做排序,然后根据页码去分页好的数组里面取相对应的数据,
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流