Php 将一个描述数组和一个数组与数据相结合

Php 将一个描述数组和一个数组与数据相结合,php,code-design,Php,Code Design,我知道,这个标题没有什么帮助,但我会尽力解释,我在寻找什么 我的主要问题是,我正在寻找一种简单的方法来组合两个阵列 $lang=array('de'=>'德语','es'=>'西班牙语','nl'=>'荷兰语') 我有X个站点,它们应该有这样一个表: language value1 value2 value3 -------------------------------------- de 123 56 097 en

我知道,这个标题没有什么帮助,但我会尽力解释,我在寻找什么

我的主要问题是,我正在寻找一种简单的方法来组合两个阵列

$lang=array('de'=>'德语','es'=>'西班牙语','nl'=>'荷兰语')

我有X个站点,它们应该有这样一个表:

language    value1    value2    value3
--------------------------------------
de          123       56        097
en          84        129       123
es          0         0         0
nl          0         0         0
language    value1    value2    value3
--------------------------------------
de          9         12        123
en          32        65       156
es          0         0         0
nl          23        12        89
站点Y可以如下所示:

language    value1    value2    value3
--------------------------------------
de          123       56        097
en          84        129       123
es          0         0         0
nl          0         0         0
language    value1    value2    value3
--------------------------------------
de          9         12        123
en          32        65       156
es          0         0         0
nl          23        12        89
此表可能在每个站点上有所不同,但我希望显示每种语言,即使它没有值。语言列表应分开,以便以后扩展


可以理解吗?需要更多信息吗?

我是从CLI执行此操作的,因此没有HTML结构。我不确定我是否完全理解你试图做的每件事,但以下是我所知道的:

$lang = array('de' => 'german', 'es' => 'spanish', 'nl' => 'dutch', 'en' => 'english');

$sites = array(
    'value1' => array('en' => 35, 'de' => 54),
    'value2' => array('nl' => 543, 'en' => 234, 'es' => 2),
    'value3' => array('es' => 39)
);

printf("%-10s", "language");
$site_names = array_keys($sites);
foreach($site_names as $site_name)
{
    printf("%-10s", $site_name);
}
printf("\n%s\n", str_repeat('-', (count($site_names) + 1) * 10));

foreach($lang as $lang_short => $lang_long)
{
    printf("%-10s", $lang_short);
    foreach($sites as $site_name => $site_values)
    {
        printf("%-10d", isset($site_values[$lang_short]) ? $site_values[$lang_short] : 0);
    }
    printf("\n");
}
输出:

language value1 value2 value3 ---------------------------------------- de 54 0 0 es 0 2 39 nl 0 543 0 en 35 234 0 语言值1值2值3 ---------------------------------------- de 54 0 0 es 0 2 39 荷兰05430 en 35 234 0