Я пытаюсь перебрать img-данные, хранящиеся в массиве внутри объекта stdClass. Я смог заставить stdClass делать все остальное, на что я надеялся, попытка заставить изображения упорядочить / перебрать, ускользнула от меня. Я посмотрел на php.net и прочитал стек для ответа, который я могу понять, что объясняет ошибку, которую я имею в дополнение к тому, что мне не удалось найти ответ в Google. Я сейчас очень растерялся и много чего перепробовал, безуспешно.
$myObj = new stdClass;
$myObj->image=['x01.jpg', 'x02.jpg', 'x03.jpg', 'x04.jpg', 'x05.jpg'];
$myObj->name="asdfg";
$myObj->phone="exaasdfaspg";
$myObj->email="exsdfg";
$myObjArray[] = $myObj;
foreach($myObjArray as $myObj)
{ echo '<img src="_imgResevior/' . $myObj->image[] . '"/>' ;}
#{ echo (in_array('<img src="_imgResevior/' . $myObj->image['image'] . '"/>')) ;}
Вы не можете получить доступ к объекту как к массиву. Если вы хотите это, вам нужно реализовать Интерфейс ArrayAccess.
Чтобы ваш код работал, просто измените foreach
к этому:
foreach($myObj->image as $img)
{
echo '<img src="_imgResevior/' . $img . '"/>';
}
foreach($myObjArray as $myObj)
{ echo '<img src="_imgResevior/' . $myObj->image[] . '"/>' ;}
должно быть
foreach($myObj->image as $myObjArray )
{ echo '<img src="_imgResevior/' . $myObjArray . '"/>' ;}
выходной HTML-код
<img src="_imgResevior/x01.jpg">
<img src="_imgResevior/x02.jpg">
<img src="_imgResevior/x03.jpg">
<img src="_imgResevior/x04.jpg">
<img src="_imgResevior/x05.jpg">