将字符串分隔值转换为对象数组

时间:2021-03-30 10:56:31

标签: php

我有字符串分隔值,我正在尝试以特定格式重新格式化它们。

$ids = $_REQUEST('ids'); // ids is comma separated string
// ids looks like abc@gmail.com,def@gmail.com,xyz@gmail.com

对于 Google 日历 api,我希望采用这种格式:

array(
        array('email' => 'abc@gmail.com'),
        array('email' => 'def@gmail.com'),
        array('email' => 'xyz@gmail.com'),

    )

1 个答案:

答案 0 :(得分:2)

要求很简单:

  1. 用逗号分解字符串。

  2. 获取电子邮件地址

  3. 通过添加 email 作为键将它们附加到数组中。

  4. 完成。

您可以使用 PHP 的 explode() 函数来实现:

<?php
$emailStr= "abc@gmail.com,def@gmail.com,xyz@gmail.com";
$emails = explode(',', $emailStr);
//echo '<pre>';print_r($emails);echo '</pre>';
$gmails = [];
if (! empty($emails)) {
    foreach ($emails as $email) {
        $gmails[] = ['email' => $email];
    }
}

echo '<pre>';print_r($gmails);echo '</pre>';

输出:

Array
(
    [0] => Array
        (
            [email] => abc@gmail.com
        )

    [1] => Array
        (
            [email] => def@gmail.com
        )

    [2] => Array
        (
            [email] => xyz@gmail.com
        )

)