php: json_encode()

Jan 06, 2010 12:39

Забавная функция, в предыдущих версиях работала криво - не все js-библиотеки соглашались переваривать то, что она предлагала. Ну вот например, есть у меня самый обычный массив, скажем созданный функцией range(), если у меня ключи целочисленные и упорядочены от наименьшего к большему - то json_encode() вернет вполне себе нормальный js-array, но если вдруг порядок ключей изменить или удалить один из них - получится объект. В php 5.3 добавили опции, среди прочих JSON_FORCE_OBJECT, так как функция, иногда, для пущей важности, генерирует смешанное содержимое. А вот JSON_FORCE_ARRAY - не догадались. Собственно, если вы еще кипятите используете ее, и вам важно получать в результате именно массив, то придется проконтралировать сортировку и наличие всех ключей, например, сгодится array_slice().

php

Previous post Next post
Up