php 5.4 var_export的改进

2021/11/29 11:06:54

本文主要是介绍php 5.4 var_export的改进,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

用 var_export 来将数据存储到 php 配置文件里的时候,发现var_export转出来的变量定义还是 array()这种形式,不能转为[],所以自己写个函数来转换一下,代码如下:

<?php
function format_var_export($data = [])
{
    $string = "<?php\n\nreturn " . var_export($data, TRUE) . ";";
    $string = str_replace("=> \n  array (", "=> [", $string);
    $string = str_replace("),", "],", $string);
    $string = str_replace(");", "];", $string);
    $string = str_replace("array (", "[", $string);
    $string = str_replace("  ", "    ", $string);
    return $string;
}

实验一下

config.php 代码如下:

<?php


$data = [
    'user' => [
        'name' => 'hello',
        'uid' => 1
    ],
    'tel' => [
        'type' => 'phone',
        'number' => '123456',
    ]
];

$string = format_var_export($data);

echo $string;

function format_var_export($data = [])
{
    $string = "<?php\n\nreturn " . var_export($data, TRUE) . ";";
    $string = str_replace("=> \n  array (", "=> [", $string);
    $string = str_replace("),", "],", $string);
    $string = str_replace(");", "];", $string);
    $string = str_replace("array (", "[", $string);
    $string = str_replace("  ", "    ", $string);
    return $string;
}

执行脚本 php config.php

输出

好了,这就是我们要的,将这个数据存储到配置文件就行了。



这篇关于php 5.4 var_export的改进的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程