0
$cfields = array_filter(explode(",", get_option('CComment_fields')));
$Ctlds = array_filter(explode(",", get_option('Ctlds')));

对不起,我知道这是一团糟。基本上我最终得到了两个数组:$cVal&$Ctlds

数组:

$Cval = Array ( [0] => Fun Co [1] => 555-555-5555 [2] => test@test.com [3] => Tom [4] => Smith ) 

$Ctlds = Array ( [0] => user_company [1] => user_phone [2] => user_email [3] => user_firstname [4] => user_lastname )

我希望匹配的[NUMBER]$Ctlds是变量,匹配[NUMBER]$Cval值是值。

示例:user_company 将被分配值 Fun Co user_phone 将被分配值 555-555-5555 等。

这是我尝试过的代码 - 不好,我知道。

foreach ($Ctlds as $Ctlds){
        $cVal[] = $Ctlds[];
    }

我已经尝试过我知道是 waaaayy 关闭的代码。任何帮助,将不胜感激。对于搜索参考,这是使用数组在 PHP 中创建变量(键)和值。太感谢了。

4

4 回答 4

3

我不确定你想要什么,但你应该试试这个:

$result = array();
foreach ($Ctlds as $key => $Ctld) {
    $result[$Ctld] = $Cval[$key];
}

你会得到一个像这样的数组:

Array (
    [user_company] => 'Fun Co',
    [user_phone] => '555-555-5555',
    [user_email] => 'test@test.com',
    [user_firstname] => 'Tom',
    [user_lastname] => 'Smith'
)
于 2013-09-27T14:25:48.397 回答
2

使用array_combine. 这正是它的用途。

$result = array_combine($Ctlds, $Cval);

如果您希望它们成为变量,则可以只extract使用该数组。

于 2013-09-27T14:29:30.780 回答
0

这段代码:

foreach ($Ctlds as $key => $Ctld) {
    $$Ctld = $Cval[$key];
}

将导致:

$user_company = "Fun Co";
$user_phone = "555-555-5555";

etc
于 2013-09-27T14:30:42.670 回答
0

尝试用逗号分隔数组并转义字符串。前任:

前任:

$Cval = array (
    [0] => "Fun Co",
    [1] => "555-555-5555",
    [2] => "test@test.com",
    [3] => "Tom",
    [4] => "Smith" ); 
于 2013-09-27T14:26:25.583 回答