1. <?php
    2. // 格式化打印数组
    3. function print_array($arr)
    4. {
    5. echo "<pre>";
    6. print_r($arr);
    7. echo "</pre>";
    8. }
    1. <?php
    2. // 数组转json
    3. json_encode()
    4. // json转数组
    5. json_decode()
    1. <?php
    2. // 对象转数组
    3. function object_to_array($param)
    4. {
    5. if (is_object($param)) {
    6. $array = (array) $param;
    7. }
    8. if (is_array($param)) {
    9. foreach ($param as $key => $value) {
    10. $array[$key] = object_to_array($value);
    11. }
    12. }
    13. return $array;
    14. }
    15. function object_to_array($param)
    16. {
    17. return json_decode(json_encode($param), true);
    18. }
    19. /**
    20. * 将对象转换为多维数组
    21. **/
    22. function objectToArray($d)
    23. {
    24. if (is_object($d)) {
    25. $d = get_object_vars($d);
    26. }
    27. if (is_array($d)) {
    28. return array_map(__FUNCTION__, $d);
    29. } else {
    30. return $d;
    31. }
    32. }
    1. <?php
    2. // 数组转对
    3. /**
    4. * 将多维数组转换为对象
    5. **/
    6. function arrayToObject($d)
    7. {
    8. if (is_array($d)) {
    9. return (object) array_map(__FUNCTION__, $d);
    10. } else {
    11. return $d;
    12. }
    13. }
    14. // PS:简单的(array)和(object)只能处理单层的数据,对于多层的数组和对象转换则无能为力.