繁体   English   中英

bash awk-需要来自php脚本的关联数组输出

[英]bash awk - need associative array output from a php script

我有一个php脚本,负责从数据库返回名称和关联的ID:

//general array structure is:
$array = array(
    "name1" => 001,
    "name2" => 002,
    ...
);
return $array;

我也有一些awk代码,需要访问该数组并将其转换为地图。 可以修改php脚本以适应此情况。 这是awk脚本:

//awk:
system("/usr/bin/php /path/to/script/query_db.php")

//query_db.php:
echo implode(' ', $results);

鉴于以上所述,我不知道该怎么做在awk中创建一个数组。 这仅回显从php脚本数组返回的值,并省略键。

把事情简单化。 从PHP使用此循环转储数组:

<?php
foreach ($array as $k=>$v) echo "$k=$v\n";
?>

输出:

name1=1
name2=2

现在在awk中,将=用作字段分隔符并填充关联数组:

php -s arr.php | awk -F= '{arr[$1]=$2} END{for (i in arr) print i, a[i]}'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM