Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Perl';PHP中的s Data::Dumper格式数组_Php_Arrays_Perl_Type Conversion_Perl Data Structures - Fatal编程技术网

使用Perl';PHP中的s Data::Dumper格式数组

使用Perl';PHP中的s Data::Dumper格式数组,php,arrays,perl,type-conversion,perl-data-structures,Php,Arrays,Perl,Type Conversion,Perl Data Structures,我需要访问由Perl的Data::Dumper输出的数组。 数组位于原始文件中,我需要使用php访问它。 数组的格式如下所示: $stats = { 'days' => 25, 'lengths' => { 'Piwee' => 269, 'Jeanne-' => 904, 'kaAnar' => 340, [... Very Big ARRAY....] 我在这里找到了,但我不想使用eval(),因为此数组将包含用户输入数据。 由

我需要访问由Perl的Data::Dumper输出的数组。
数组位于原始文件中,我需要使用php访问它。
数组的格式如下所示:

$stats = {
  'days' => 25,
  'lengths' => {
    'Piwee' => 269,
    'Jeanne-' => 904,
    'kaAnar' => 340,
[... Very Big ARRAY....]
我在这里找到了,但我不想使用eval(),因为此数组将包含用户输入数据。 由于在str_replace解决方案的情况下,我总是需要eval()输出,因此我认为我需要找到另一种方法来实现这一点。
可能转换为XML或通过直接PHP解析?
我不确定这里的最佳解决方案是什么

perl/PHP/bash解决方案就可以了

注1:我无法编辑输出此原始文件的Perl代码

注2:我不使用Perl编写代码,因此我不知道如何处理此类数据。不要使用
data::Dumper
导出数据。它主要用于调试目的,而不是用于数据序列化,尤其是不用于输入外文语言

使用Perl模块的
encode_json
调用从Perl哈希创建json字符串,并使用PHP将其转换为PHP关联数组

例如,假设您从
Data::Dumper
输出的数据在文件
stats.Data
中,那么像这样的一个短Perl程序将打印与STDOUT等效的JSON

使用严格;
使用“全部”警告;
使用JSON;
打印encode_json(执行'stats.data'或die$!),“\n”;
输出
{“长度”:{“珍妮-”:904,“皮维”:269,“卡纳”:340},“天”:25}