Ich versuche, die Daten von Bigcommerce durch php angezeigt wird, wenn ich die Bigcommerce :: getCategories run() i eine Reihe von Daten wie folgt erhalten:PHP: Anzeigen von Daten aus Bigcommerce API
[0] => Bigcommerce\Api\Resources\Category Object
(
[ignoreOnCreate:protected] => Array
(
[0] => id
[1] => parent_category_list
)
[ignoreOnUpdate:protected] => Array
(
[0] => id
[1] => parent_category_list
)
[fields:protected] => stdClass Object
(
[id] => 88
[parent_id] => 0
[name] => Dell
[description] =>
[sort_order] => 0
[page_title] =>
[meta_keywords] =>
[meta_description] =>
[layout_file] =>
[parent_category_list] => Array
(
[0] => 88
)
[image_file] =>
[is_visible] => 1
[search_keywords] =>
[url] => /dell/
)
[id:protected] => 88
[ignoreIfZero:protected] => Array
(
)
[fieldMap:protected] => Array
(
)
)
aber wenn ich Versuchen Sie, dies an JQuery zu übergeben, damit ich es mit dieser Anweisung anzeigen kann: <?php echo json_encode($categories); ?>
Ich erhalte ein Array von leeren Objekten, was ist der richtige Weg, um das Array von Objekten in der BigCommerce-API zu erhalten? Vielen Dank.
yup, sollte dies funktionieren, aber nicht aus dem Grund, den Sie denken. json_encode ist vollständig in der Lage, Objekte zu kodieren (während Sie zu glauben scheinen, dass json_encode Objekt nicht kodieren kann, kann es das). aber es wird nicht "geschützte" Eigenschaften von Objekten kodieren, die alle seine Objekt-Arrays sind. Wenn du es in ein Array wirfst, nimmst du die Eigenschaften "protected" komplett weg, weil die Arrays von php kein Sichtbarkeitskonzept haben. – hanshenrik