Подскажите пожалуйста, есть массив
{"status":"ok","orders":[{"orderid":"32977","number":"32977","ordercode":"","ordername":"\u041e\u0431\u043c\u0435\u043d \u0432 1\u0441","ordersource":false,"clientid":"13354","clientname":"\u0421\u0430\u043c\u043e\u0445\u0438\u043d \u0412\u043b\u0430\u0434\u0438\u0441\u043b\u0430\u0432","clientemail":"samokhin.contrust@gmail.com","clientphone":"380660785767","clientaddress":"","managerid":"0","cdate":"2018-01-17 10:04:36","dateto":"","deliveriID":"0","deliverinote":"","deliveriprice":"0.00","paymentid":"0","storagetoid":"0","storagetoexternalid":"","sum":"0.00","margin":"0.00","sumbase":"0.00","currency":"UAH","statusid":"133","statusname":"\u0417\u0430\u0434\u0430\u0447\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430","statuscolor":"#949494","workflowid":"19","workflowname":"\u041f\u0440\u043e\u0441\u0442\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430","contractorid":"0","contractorname":null,"customfields":[],"products":[],"clientcompany":"Contrust","clientcode":"28452925","weight":0,"gabarite":0},{"orderid":"32978","number":"32978","ordercode":"","ordername":"\u0417\u0430\u0434\u0430\u0447\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430","ordersource":false,"clientid":"13354","clientname":"\u0421\u0430\u043c\u043e\u0445\u0438\u043d \u0412\u043b\u0430\u0434\u0438\u0441\u043b\u0430\u0432","clientemail":"234","clientphone":"234","clientaddress":"","managerid":"0","cdate":"2018-01-17 09:46:12","dateto":"","deliveriID":"0","deliverinote":"","deliveriprice":"0.00","paymentid":"0","storagetoid":"0","storagetoexternalid":"","sum":"0.00","margin":"0.00","sumbase":"0.00","currency":"UAH","statusid":"133","statusname":"\u0417\u0430\u0434\u0430\u0447\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430","statuscolor":"#949494","workflowid":"19","workflowname":"\u041f\u0440\u043e\u0441\u0442\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430","contractorid":"0","contractorname":null,"customfields":[],"products":[],"clientcompany":"Contrust","clientcode":"28452925","weight":0,"gabarite":0}]}
Есть код с помощью которого запускаем цикл массивов и выводим его.
foreach ($array['orders'] as $item)
{
echo $item['orderid'];
}
Не могу записать в json все эти orderid
file_put_contents(
'chat.json',
json_encode(['command' => $item['orderid']], JSON_UNESCAPED_UNICODE)
);
Так записывается только один orderid, но не все.
Вам нужно собрать сначала полный массив идентификаторов и его уже записывать в файл.
$myArray = [
'command' => $orderIDsArray, //массив из всех идентификаторов
];
json_encode($myArray) // где $myArray заранее собранный массив.
а если вы пытаетесь сделать это в цикле, то получите много кодированных строк, а не цельный json.
В файле вы видите только 1 идентификатор из-за того, что не правильно используете file_put_contents в этих целях. Для добавления новых строк в файл и чтобы не перетирать уже существующие эту функцию стоит использовать с флагом FILE_APPEND
Подробнее в документации file_put_contents
По запросу пример кода с выборкой и записью:
$json = ''; // тут json который необходимо обработать
$data = json_decode($json, true);
$orders = [];
$file = 'my_file.txt';
foreach ($data['orders'] as $order) {
echo $order['orderid'] . '<br>'; // если нужно посмотреть
$orders[] = $order['orderid'];
}
file_put_contents ($file, implode(PHP_EOL , $orders)); // вместо PHP_EOL можно поставить любой нужный знак для удобства чтения
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Как в php laravel ограничить контент записи? для слайдера хочу вывод сделать
Подскажите пожалуйста, есть код который записывает все orderid из цикла в текстовый файл