我有一个如下形式的数组,
Array
(
[0] => Array
(
[emailAddress] => abc@gmail.com
[subject] => Hi
[content] => How are you?
[attachment] => QmFzZTY0IGlzIGFuIGVuY29kaW5nIHNjaGVtZSB1c2VkIHRvIHJlcHJlc2VudCBiaW5hcnkgZGF0YSBpbiBhbiBBU0NJSSBmb3JtYXQuIA==
[fileName] => Base 64 Encoder
)
)
我怎样才能用下面的形式得到它:
Array
(
[emailAddress] => abc@gmail.com
[subject] => Hi
[content] => How are you?
[attachments] => Array
(
[attachment] => QmFzZTY0IGlzIGFuIGVuY29kaW5nIHNjaGVtZSB1c2VkIHRvIHJlcHJlc2VudCBiaW5hcnkgZGF0YSBpbiBhbiBBU0NJSSBmb3JtYXQu
[fileName] => Base 64 Encoder
)
)
有没有办法将[attachments] => Array
的类型转换为[attachments] => Object
?如下所示:
Array
(
[emailAddress] => abc@gmail.com
[subject] => Hi
[content] => How are you?
[attachments] => Object
(
[attachment] => QmFzZTY0IGlzIGFuIGVuY29kaW5nIHNjaGVtZSB1c2VkIHRvIHJlcHJlc2VudCBiaW5hcnkgZGF0YSBpbiBhbiBBU0NJSSBmb3JtYXQu
[fileName] => Base 64 Encoder
)
)
我已经尝试查看许多方法(如 array_push、array_splice 等),但仍然无法找到。希望有人可以帮助我。谢谢。
最佳答案
试试这个
$result = array();
$result = $arr[0];
$result['attachments'] = new stdClass();
$result['attachments']->attachment = $result['attachment'];
$result['attachments']->fileName = $result['fileName'];
unset($result['attachment']);
print_r($result);
关于php - 如何在 PHP 中更改数组结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31825243/