راکت

مشکل در دسترسی و نمایش به اطلاعات دریافت شده به صورت json

2 پاسخ

سلام
من به واسطه API مقادیری رو به سرور دیگه پاس می‌دهم و پاسخ رو در حالت json دریافت می‌کنم (آدرس زیر به صورت فرضی است):

$data = file_get_contents("http://site.com/api?data=Mydata");

$decodedData = json_decode($data);

پاسخ و خروجی من پس از json_decode به صورت زیر است:

stdClass Object
(
    [Usr_Rest_GetUserDetail] => Array
        (
            [0] => stdClass Object
                (
                    [ID] => 20202020
                    [NAME] => Sajad
                    [LASTNAME] => Asgari
                )

        )

)

حالا من قصد دارم به فرض به یکی از آیتم‌های id یا name دسترسی داشته باشم. به چه صورت باید عمل کنم؟
خودم به صورت زیر عمل می‌کنم، ولی مقدار NULL را بر می‌گرداند. اشتباه کار کجاست و طریقه‌ی صحیح دسترسی چگونه است و یا در مراحل کار اشکالی وجود دارد؟

echo $decodedData['0']->NAME;
ثبت پرسش جدید

پاسخ‌ها

2
احسان
احسان
@ehsan99

تخصص: توسعه دهنده وب

با افزودن true، کد رو به صورت آرایه برگرداندم:

$data = file_get_contents("http://site.com/api?data=Mydata");

$decodedData = json_decode($data,true);

در نهایت خروجی به این شکل می‌شه:

Array
(
    [Usr_Rest_GetUserDetail] => Array
        (
            [0] => Array
                (
                    [ID] => 20202020
                    [NAME] => Sajad
                    [LASTNAME] => Asgari
                )

        )

)

حالا برای دسترسی به یک آیتم (مثلاً نام) به صورت زیر عمل کردم:

echo $decodedData['Usr_Rest_GetUserDetail'][0]['NAME'];

ولی همچنان در حالت آبجکتی مشکل دارم و اگر کسی راه حلی داشت لطفاً ارائه کنه.

ممنون

محمد حمزه
محمد حمزه
@mohammadhamza

تخصص: جستجوگر

برای این مورد در حالت آبجکتی راه حلی پیدا کردید؟
لطفا راهنمایید بفرمایید منم با اون عدد صفر مشکل دارم نمیدونم چطوری بگیرمشون
البته با ->{'0'} توی جاهای دیگه دیدم ولی برای من کار نکرد

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام