Я имею массив под названием $photos
следующим образом:
Array
(
[0] => Array
(
[fileURL] => https://www.filepicker.io/api/file/UYUkZVHERGufB0enRbJo
[filename] => IMG_0004.JPG
)
[1] => Array
(
[fileURL] => https://www.filepicker.io/api/file/WZeQAR4zRJaPyW6hDcza
[filename] => IMG_0003.JPG
)
)
Теперь я хочу создать новый массив под названием $values
следующим образом:
Array
(
[vshare] => Array
(
[IMG_0003.JPG] => Array
(
[0] => https://www.filepicker.io/api/file/RqAN2jZ7ScC8eOx6ckUE
)
[IMG_0004.JPG] => Array
(
[0] => https://www.filepicker.io/api/file/XdwtFsu6RLaoZurZXPug
)
)
)
Для этого я пробовал следующий код:
$values = array();
foreach($photos as $photo ) {
$values['vshare'][$photo->filename] = array($photo->fileURL);
}
Затем я получил неправильный вывод, когда у меня print_r($values)
:
Array
(
[vshare] => Array
(
[] => Array
(
[0] =>
)
)
)
Может кто-то исправить ошибку, которую я делаю в своем коде?
Благодарю.
→ - оператор для объектов, как это описано в этом вопросе.
Пытаться:
$values = array();
foreach($photos as $photo ) {
$values['vshare'][$photo['filename']] = array($photo['fileURL']);
}
<?php
$values = array();
foreach($photos as $photo ) {
$values['vshare'][$photo['filename']][0] = $photo['fileURL'];
}
вы должны попробовать этот код
$values = array();
foreach($photos as $photo) {
$values['vshare'][$photo['filename']] = array(0 => $photo['fileURL']);
}
Прекрасно работает для меня.