خطا در استفاده از stdClass Object

پرسیده شده
فعالیت 1574 روز پیش
دیده شده 1190 بار
0

سلام خدمت استاد عزیز

زمانی که از (object) استفاده میکنم وقتی که میخوام echo انجام بدم با ارور مواجه میشم.

اشکال کار من کجاست؟

در این کد زمانی که از print_r استفاده میکنم و فقط خود strObject را پرینت میکنم به صورت درست نمایش میده

<?php
$cars = array(

    "1" => array(
        "benz" => array(
            "truck" => "axor",
            "car" => "sls"
        )
        ),
     "2" => array(
         "bmw" => "z4",
         "audi" => "TT"
        ),
        );

$strObject = (object) $cars;
echo ($strObject->{2}->bmw);

 

فایل پیوست

8

مورد تایید استاد

حذف شده

سلام ببینید زمانی که آرایه بیش از یک بُعد داشته باشه باید به ازای هر آرایه یک بار عمل cast کردن یا به عبارتی تبدیل آرایه به آبجکت رو انجام بدید الان شما اگر متغیر car  رو var_dump کنید می بیند که صرفا بُعد اول آرایه به آبجکت تبدیل میشه ولی آرایه های بعدی هنوز آرایه هستند که از روش دیگه ای که در جلسه بعد توضیح دادیم برای تبدیل کل آرایه به آبجکت باید استفاده کنیم ...

فایل پیوست

وحید صالحی

توسط

وحید صالحی

17 دی 98