доступ к текстовым файлам с помощью php? - PullRequest
1 голос
/ 04 ноября 2010

Мне было интересно, как я могу использовать php для доступа к текстовым файлам и отображения информации с использованием массивов php, это может показаться вопросом новичка, но я не работал с внешними файлами.

вот так.

home.txt:

ha15rs,250,home2.gif,2
ha36gs,150,home3.gif,1
ha27se,300,home4.gif,4
ha4678,200,home5.gif,5

что я хотел сделать, это отсортировать эту информацию в HTML-таблице, где каждая строка в виде строки и 4 столбца для представления данных !! спасибо ура :))

Ответы [ 4 ]

8 голосов
/ 04 ноября 2010

Похоже на значения, разделенные запятыми. Смотрите примеры на http://ee.php.net/manual/en/function.fgetcsv.php

3 голосов
/ 04 ноября 2010

вы можете сделать что-то подобное:

<?php
$file = file_get_content('file.txt');

$array = explode("\n", $file);

Обратите внимание, что это зависит от вашего типа новой строки :

обычно:

  • Gnu / Linux / Unix / MacOS, поскольку X использует "\n"
  • Windows использует "\r\n"
  • MacOS перед X использует "\r"
1 голос
/ 04 ноября 2010

вы должны взглянуть и на функцию file () , она читает файл в массив построчно.
после этого вы можете разделить значения с помощью explode().

<?php
  $foo = file('example.txt');
  // will echo the 2nd line of the example.txt-file
  echo $foo[1];
  // echos all items seperated by a comma
  foreach($foo as $line=>$values){
    $value_arr = explode(',',$values);
    echo 'line #'.$line.': ';
    foreach($value_arr as $id=>$item){
      echo $id.': '.$item.'; ';
    }
    echo "\n";
  }
?>
0 голосов
/ 04 ноября 2010

начало сделки с этим:

  # echo before table headline
    ...........
    $handle = @fopen("myfile.txt","r");
    # read line by line
    while (($buffer = fgets($handle, 4096)) !== false) {
        echo '<tr>';
            $array = explode(',', $buffer);
        foreach($array as $val){
             echo '<td>'.$val.'</td>';      
            } 
        echo '</tr>';       
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...