当前位置: 首页 > news >正文

PHP:格式化JSON为PHP语法格式

1. 原生函数

$arr = [1,2,3,4];
$str = var_export($a,true);
var_dump($str);

2. 自定义方法

class Export{
  private static $space;
  private static function do($a, string $prev){
    $res = '';
    $next = $prev . self::$space;
    if (is_array($a)) {
      $res .= '[';
      foreach ($a as $k => $v)  if (is_int($k)) {
        $res .= $next . self::do($v, $next) . ',';
      } else {
        $res .= $next . self::do($k, $next) . ' => ' . self::do($v, $next) . ',';
      }
      return $res . $prev . ']';
    } else if (is_scalar($a)) {
      return is_string($a) ? '\'' . str_replace('\'', '\\\'', $a) . '\'' : json_encode($a);
    } else return 'NULL';
  }
  public static function to($a, int $space_len = 2){
    self::$space = str_repeat(' ', max($space_len, 2));
    return self::do($a, PHP_EOL);
  }
}

// $str = Export::to(转化的数据);
// var_dump($str);

相关文章:

  • 【深入解析Inception网络:从V1到V3的理论演进与对比,包含pytorch实现Inception模块的代码】
  • 日语学习-日语知识点小记-构建基础-JLPT-N3阶段(11):(1)「~ておく」的基本用法 (2)区分:一些列举的
  • Ragflow技术栈分析及二次开发指南
  • 2025-ICLESCTF-WP
  • CUDA原子操作
  • PDFMathTranslate安装使用
  • 【python】异常捕获和处理
  • nats jetstream 测试和客户端分析
  • vue3框架的响应式依赖追踪机制
  • C#变量与变量作用域详解
  • Android源码编译命令详解
  • DeepSeek与Manus:AI技术双星如何重构IT生产力格局
  • 作业-三层神经网络拟合任意函数、手写数字识别、室内定位
  • 【论文阅读】VAD: Vectorized Scene Representation for Efficient Autonomous Driving
  • STM32第一天建立工程
  • 云计算:虚拟化、容器化与云存储技术详解
  • 字节跳动C++客户端开发实习生内推-抖音基础技术
  • 数据库语句
  • leetcode day27 455+376
  • 中级网络工程师面试题参考示例(5)
  • 视频|力箭一号“一箭6星”,将多颗高分辨率遥感卫星送入太空
  • 百年前淮北乡村的风俗画卷——读郑重 《九十自述》
  • 欧洲加大力度招募美国科研人员
  • 国家外汇管理局:4月货物贸易项下跨境资金净流入649亿美元
  • 探月工程鹊桥二号中继星取得阶段性进展
  • 盐城经济技术开发区党工委书记王旭东接受纪律审查和监察调查