1 <sect1 id="zend.json.objects">
2 <title>אובייקטי JSON</title>
4 כשמקודדים אובייקטים של PHP ב JSON, כל הערכים המוגדרים ל public לאותו אובייקט יקודדו באובייקט ה JSON.
7 JSON לא מאפשר שיוך אובייקטים, לכן לא מומלץ לקודד אובייקטים אשר משוייכים או מיוחסים לאובייקטים אחרים.
8 אם ישנה בעיה עם רקורסיה באובייקטים, <code>Zend_Json::encode()</code> ו <code>Zend_Json_Encoder::encode()</code> מאפשרים הזנה של פרמטר שני אופציונלי לבדיקת רקורסיה;
9 אם התבצע קידוד לאובייקט פעמיים, חריג יזרק אשר יודיע על כך.
12 פענוח אובייקטים אשר קודדו ב JSON מציב קושי נוסף, מאחר ואובייקטים ב JS דומים למערכים אסוציאטיבים ב PHP.
13 יש הממליצים שמזהה יחודי לכל מחלקה צריך להכנס לאובייקט כדי ש JSON יוכל לפענח את זה טוב יותר.
14 אחרים מרגישים שזה יכול להוות כסכנה לכל המערכת.
17 כברירת מחדל, <code>Zend_Json</code> יפענח אובייקטים של JSON בתור מערכים אסוציאטיבים. למרות, שניתן להעביר פרמטר שני אופציונלי אשר יחזיר אובייקט במקום מערך, לדוגמא:
19 <programlisting role="php"><![CDATA[
20 // Decode JSON objects as PHP objects
21 $phpNative = Zend_Json::decode($encodedValue, Zend_Json::TYPE_OBJECT);
25 אובייקטים אשר יפוענחו יוחזרו כאובייקטים של <code>StdClass</code> עם ערכים המשוייכים ל
26 key/value באובייקט של JSON.
29 ההמלצה של Zend Framework היא שכל מתכנת יחליט בעצמו כיצד לפענח אובייקטים של JSON.