StdClass একটি অবজেক্টকে অ্যারেতে রূপান্তর করতে আমার একটি সমস্যা আছে। আমি এইভাবে চেষ্টা করেছি:
return (array) $booking;
অথবা
return (array) json_decode($booking,true);
অথবা
return (array) json_decode($booking);
কাস্ট করার আগে অ্যারেটি একটি রেকর্ড সহ পূর্ণ, আমার চেষ্টা করার পরে এটি খালি। এর সারিগুলি মোছা না করে কীভাবে এটি কাস্ট / কনভার্ট করবেন?
কাস্ট করার আগে অ্যারে:
array(1) { [0]=> object(stdClass)#23 (36) { ["id"]=> string(1) "2" ["name"]=> string(0) "" ["code"]=> string(5) "56/13" } }
কাস্ট করার পরে খালি শূন্য হয় যদি আমি একটি করার চেষ্টা করি var_dump($booking);
আমি এই ফাংশনটি চেষ্টা করেছি তবে সর্বদা খালি:
public function objectToArray($d) {
if (is_object($d)) {
// Gets the properties of the given object
// with get_object_vars function
$d = get_object_vars($d);
}
if (is_array($d)) {
/*
* Return array converted to object
* Using __FUNCTION__ (Magic constant)
* for recursive call
*/
return array_map(__FUNCTION__, $d);
}
else {
// Return array
return $d;
}
}
var_dump($booking);
আউটপুট NULL
?
var_dump()
আগে জিজ্ঞাসা করছিলাম । একই পরিবর্তনশীল নামটি বিটিডব্লু আবার ব্যবহার করবেন না। $booking
কাস্টিংয়ের আগে যদি কিছু ছিল তবে এখনও কাস্টিংয়ের আগে এমন কিছু হওয়া উচিত এবং এরপরে আলাদা কিছু নয়। ইনপুট এবং প্রসেসিং ভেরিয়েবলের মধ্যে পার্থক্য করুন অন্যথায় আপনি এমন সমস্যায় পড়ে যাচ্ছেন যা আপনি সেখানে কী করছেন তা আর বুঝতে পারছেন না।
return
। এবংjson_decode
একটি অ্যারেতে চালানো আমার কাছে বেশ মরিয়া মনে হচ্ছে, সম্ভবত কম্পিউটারের সামনে খুব দীর্ঘ সময় বসে আছে এবং এখনই একটু বিরতি নেওয়ার সময় এসেছে?