从数组PHP获取值-非法偏移量

时间:2018-09-28 18:15:35

标签: php arrays multidimensional-array

这是来自PHP日志中$form_data变量/数组的print_r。

[28-Sep-2018 18:04:03 UTC] Array
(
    [cfdb7_status] => unread
    [meno] => data
    [email] => data
    [telefon] => phone
    [meno-ucastnika__1] => data
    [email-ucastnika__1] => data
    [meno-komory__1] => 
    [registracne-cislo__1] => 
    [_wpcf7_groups_count] => Array
        (
            [emails] => 1
        )

    [obchodne-meno] => obchod
    [obchodne-sidlo] => fs
    [ico] => 50426508
    [dic] => dic
    [icdph] => icdicko
)

如何获取_wpcf7_groups_count key的值?

如果我要发送电子邮件,我只写了$form_data['email']。除_wpcf7_groups_count之外,其他所有内容均如此。

$form_data['_wpcf7_groups_count']
$form_data['_wpcf7_groups_count'][0]['emails']
$form_data['_wpcf7_groups_count']['emails']

以上所有内容均无效。首先是给我非法补偿。

1 个答案:

答案 0 :(得分:1)

根据您发布的数据(*)

$form_data['_wpcf7_groups_count']['emails']

应该工作,并产生1。

请注意,父键值是一个数组,因此如果表单数据通过某种模板引擎,则问题可能出在这里。

我感到奇怪的是,您在第一种方法中遇到了错误,而在其他方法中却没有:在PHP中,如果您不能引用数组键,则无法引用任何后代,并且仍然会收到错误从父键。这就是让我怀疑还有其他事情发生的原因。

==========

(*)我假设您在保留格式的同时删除了一些信息。否则写

[meno-komory__1] => 
[registracne-cislo__1] => 

可能被解释为嵌套键。我没有看到“数组”,因此我假设只丢失了一些数据。但是,下次要明确编写它以避免任何歧义:

[meno-komory__1] => "(redacted)",
[registracne-cislo__1] => "(array, redacted)",