если массив где ключи [0], [1], [2] идут по порядку, например Array ( [0] => 11 [1] => 5 [2] => 3 ) то json_encode возвращает ["11","5","3"] А если массив такой Array ( [0] => 11 [2] => 3 ) то json_encode уже пишет ключ массива {"0":"11","2":"3"} Как сделать чтобы json_encode всегда писал ключ массива ? у меня в бд тип данных для поля json и я не могу сделать запрос когда нет ключей
никак ... ключ массива он тебе пишет такой - какой там и есть если нужно просто значения без учета ключей - применить к массиву функцию перед записью array_values(массив) или ты про это? PHP: echo json_encode([1,2,333,44],JSON_FORCE_OBJECT);
Код (PHP): $json = json_encode($array, JSON_FORCE_OBJECT); ничего не изменил массив смотрю так Код (PHP): print_r($array);
@sound во первых, обрати внимание на скобочки [] или {}, какие получаются в JSON. То что в PHP представляется как массив, не всегда реализуемо в JS как массив. Но может быть представлено как объект. По сути@ADSoft в #2 уже всё сказал, ты только не суетись и внимательно смотри на результат.