Есть файл с данными из которого нужно выбрать определенные данные, сформировать JSON и отправить по запросу на клиент. Пока это выглядит так
ФАЙЛ:
time <wbr> NaN <wbr> someData <wbr> 112 <wbr> 3 <wbr> 0
<wbr> -1 <wbr> someData <wbr> someData <wbr> 0 <wbr> 0
<wbr> someData <wbr> productId_1 <wbr> productId_2
Это пример одной строки txt файла, таких строк много.
$handle = 'file.txt';
$f = fopen($handle, "r");
$full_file = [];
$one_string = [];
$page_of_product = [];
$position_of_product = [];
while(!feof($f)) {
$arr[] = fgets($f); // добавляю в массив по 1 строке из файла
}
for ($i=0; $i < count($arr); $i++) {
$arr2[] = explode("<wbr>", $arr[$i]);// формирую массив из каждой строки (<wbr> - это просто разделитель столбцов)
}
for ($i=0; $i < count($arr2); $i++) {
$page_of_product[] = [$i => $arr2[$i][4] ];
$position_of_product[] = [$i => $arr2[$i][3] ];
}//так я получаю массивы с нужными данными (нужна ячейка 3 и 4)
А далее я не знаю как из этих массив сформировать корректный JSON, если писать просто $page_of_product = json_encode($page_of_product);
то JSON получается не корректный...как правильно сделать? Заранее спасибо!
Для меня правильный, тот который я смогу распарсить на клиенте)
Давайте, сделаем массив объектов, типа [{"page":" 3 ","position":" 112 "}]
$handle = 'php://stdin';
$res = [];
foreach (file($handle, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES) as $line) {
$arr2 = explode("<wbr>", $line);
$res[] = ['page'=> $arr2[4], 'position'=> $arr2[3]];
}
echo json_encode($res);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Есть сайт объявлений на WordPress (+ тема ClassiPress)На сайте есть как обычные, так и VIP объявления