1 这是一个通过递归的办法, 通过父ID, 不断调用自身去查找分类表里父ID, 直接遇到父ID为0就返回数据。 用处是:传一个分类ID,返回这个分类是在第几层。 今天浪费了一些时间在这儿return category_hierarchy($cateList['ParentID'],++$a);一开始以为终止递归返回数据时才需要加return, 所以这一句就没加return。 导致外面控制器调用时无论如何都收不到返回值。这里我需谨记的是,递归调用前需要加上return
2015/12/18 下午。
function category_hierarchy($CateID,$a=1){
$cateList=M('productcategory')->find($CateID);
if($cateList['ParentID']!=0){
return category_hierarchy($cateList['ParentID'],++$a);
}
else{
return $a;
}
}
2 将一个数组顺序反过来
array_reverse($arr)
3 sql 修改密码:
2015/12/18 下午。
function category_hierarchy($CateID,$a=1){
$cateList=M('productcategory')->find($CateID);
if($cateList['ParentID']!=0){
return category_hierarchy($cateList['ParentID'],++$a);
}
else{
return $a;
}
}
2 将一个数组顺序反过来
array_reverse($arr)
3 sql 修改密码:
SET PASSWORD FOR '用户名'@'主机' = PASSWORD('密码')
4、这是PHP的一个坑,或说是BUG。前端传到后端的json字段串,PHP进行解析后变成了null:
json_data:
[{"ProductId":1,"DistributionId":1,"ProductImageUrl":"https://img.alicdn.com/imgextra/i4/2063363250/TB20Tb4bsjI8KJjSsppXXXbyVXa_!!2063363250.jpg_430x430q90.jpg","ProductSku":"dk350001","PName":"Martin小马丁吉他 LX1 E/LXK2单板旅行民谣吉他 DJR全单","Price":"8.00","MinimumPrice":"6.00","TagPrice":"5.00","ShopPrice":"22.30"},{"ProductId":2,"DistributionId":null,"ProductImageUrl":"https://gd3.alicdn.com/imgextra/i2/43050425/TB2LeVDgH8kpuFjy0FcXXaUhpXa_!!43050425.jpg_400x400.jpg","ProductSku":"Martin222112","PName":"飞琴行马丁Martin GPCPA4 DCPA4 RW GPC Aura GT美产电箱民谣吉他","Price":"9000.00","MinimumPrice":"8000.00","TagPrice":"8000.00","ShopPrice":null}]
如上面这段json, json_decode(json)后变成null了。
解决方案:
用下面的方法可以实现正确解析。
$data
=
stripslashes
(html_entity_decode(
$info
));
//$info是传递过来的json字符串
$data
= json_decode(
$data
,TRUE);
html_entity_decode() 函数的作用是把 HTML 实体转换为字符
stripslashes() 函数的作用是删除反斜杠