javascript — Pharse первый столбец текстового файла в php или JSON

Итак, я начинаю изучать JSON.

То, что я пытаюсь сделать, это pharse первый столбец (id) этого текстового файла

http://www.ufo-history-evidence.com/myTutorials.txt

в массив JSON

Насколько я знаю, мне пришлось бы сначала переместить его в массив PHP, а затем перевести на JSON.

Я должен быть немного более ясным об этом, я думаю,

должна быть функция JavaScript

выполненная функция возвращает строку

строка анализируется как JSON, в результате получается массив, содержащий идентификаторы

Это то, что я получил

<script type="text/javascript">
var filePath = "myTutorials.txt";
xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET",filePath,false);
xmlhttp.send(null);
var fileContent = xmlhttp.responseText;
var fileArray = fileContent.split('\n')

for (var i = 0, l = fileArray.length; i < l; ++i) {
fileArray[i] = fileArray[i].slice(0,7);
};

alert(fileArray.join('\n'));

</script>

0

Решение

Обновить: Поскольку вопрос был отредактирован, и теперь стало ясно, что необходимо решение Javascript, я обновил ответ в соответствии с вопросом. Я сохранил оригинальные функции PHP для справки.

Ну, здесь задействована небольшая работа с JSON, большая часть программы будет обрабатывать обработку строк:

  1. получить содержимое этого файла через Аякса например (или в PHP через file_get_contents ())
  2. разбить содержимое файла на строки, вы можете использовать Трещина() метод для этого (или взорваться () для PHP], это сгенерирует массив, заполненный строками из этого файла
  3. перебрать массив из # 2 и запустить другой Трещина() (или же взорваться ()) разбить каждую строку на поля, добавить первое поле в массив результатов
  4. закодировать массив результатов с JSON.stringify () (или же json_encode () для PHP)

Кроме того, вы можете использовать карта() (или же array_map () в PHP) на шаге № 3, чтобы уменьшить сложность вашего кода.

1

Другие решения

<?php
$fh=fopen("samplie.txt","r");
if($fh){
$arr=array();
while(($line=fgets($fh))!=false){
$arr[]=explode(" ",$line);
}
$temp=array();
for($i=0;$i<count($arr);$i++){
$temp[]=$arr[$i][0];
}
echo json_encode($temp);
}

Это один из способов, но не самый эффективный.

0

По вопросам рекламы [email protected]