当前位置:首页 > 问答 > 正文

json处理|数据转换 php数组转json字符串及php json字符串转数组方法解析

🔍 关键词相关内容

PHP数组转JSON字符串 🏗️

  1. json_encode():将PHP数组/对象转为JSON字符串。

    json处理|数据转换 php数组转json字符串及php json字符串转数组方法解析

    $phpArray = ["name" => "张三", "age" => 25];  
    $jsonStr = json_encode($phpArray); // 输出:{"name":"张三","age":25}  
    • 参数
      • JSON_UNESCAPED_UNICODE(保留中文不转Unicode)✨
      • JSON_PRETTY_PRINT(格式化输出,适合调试)📝
  2. 处理特殊内容

    • 遇到非UTF-8数据时,先用iconv()mb_convert_encoding()转码。

JSON字符串转PHP数组 🔄

  1. json_decode():解析JSON字符串为PHP数组/对象。

    $jsonStr = '{"name":"李四","skills":["PHP","JSON"]}';  
    $phpArray = json_decode($jsonStr, true); // 加`true`转为关联数组  
    • 参数
      • 第二个参数为true时返回数组,默认返回对象。
      • JSON_THROW_ON_ERROR(PHP 7.3+,错误时抛出异常)⚠️
  2. 常见问题

    json处理|数据转换 php数组转json字符串及php json字符串转数组方法解析

    • 无效JSON会返回null,用json_last_error()检查错误类型。
    • 深度限制:默认512层,超限需调整$depth参数。

实用技巧 🛠️

  • 调试工具var_dump($phpArray)print_r()快速查看结构。
  • 性能优化:大JSON用stream逐行解析(如JsonMachine库)。

📌 注意:确保JSON字符串格式正确(双引号、无尾逗号)!

发表评论