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

  1. 原生函数
php 复制代码
$arr = [1,2,3,4];
$str = var_export($a,true);
var_dump($str);
  1. 自定义方法
php 复制代码
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);
相关推荐
星光一影21 分钟前
打车/网约车、代驾、顺风车/拼车、货运、租车等多种出行服务的一站式解决方案
mysql·微信小程序·php·uniapp·html5·web app
Zz_waiting.32 分钟前
统一服务入口-Gateway
java·开发语言·gateway
四维碎片1 小时前
【Qt】大数据量表格刷新优化--只刷新可见区域
开发语言·qt
薛慕昭1 小时前
C语言核心技术深度解析:从内存管理到算法实现
c语言·开发语言·算法
火星数据-Tina1 小时前
Python + WebSocket 实现实时体育比分系统(含数据库设计与前端演示)
开发语言·前端
JSON_L1 小时前
Fastadmin中使用小程序登录
小程序·php·fastadmin
⑩-2 小时前
浅学Java-设计模式
java·开发语言·设计模式
攻心的子乐2 小时前
软考 关于23种设计模式
java·开发语言·设计模式
qq_479875432 小时前
C++ ODR
java·开发语言·c++
一叶之秋14122 小时前
Qt开发初识
开发语言·qt