Самый простой способ прочитать CSV-файл с помощью php, а затем выбрать одно конкретное значение - PullRequest
2 голосов
/ 01 ноября 2010

Заранее спасибо за ваше время / помощь.Я новичок в обучении php, поэтому, пожалуйста, имейте это в виду.

1-й вопрос Мне нужен скрипт php, который читает файл csv.

2-й вопрос Как отобразить определенную ячейку (строка и строка / столбец) в этом файле

Я обнаружил этот скрипт в похожем ответе, скрипт отлично читает весь файл, но я только хочу выбрать конкретную ячейку / значение в этом CSV-файле.Так как мне отобразить определенную строку или строку и столбец.

$row = 1;
if (($handle = fopen("1.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        for ($c=0; $c < $num; $c++) {
            echo $data[$c] . "<br />\n";
        }
    }
    fclose($handle);
}

Ответы [ 2 ]

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

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

$row = 1;
$mycsvfile = array(); //define the main array.
if (($handle = fopen("1.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        for ($c=0; $c < $num; $c++) {
            echo $data[$c] . "<br />\n";
        }
        $mycsvfile[] = $data; //add the row to the main array.
    }
    fclose($handle);
}

echo $mycsvfile[3][1]; //prints the 4th row, second column.
0 голосов
/ 29 мая 2012

Мы можем создать таблицу и поля таблицы в соответствии с заголовком csv с помощью приведенного ниже сценария. Вместо того, чтобы печатать заголовок, я хочу создать таблицу с полями таблицы в качестве заголовка. Данные в каждом поле могут быть varchar (50)

$row = 1;
if (($handle = fopen("1.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
    $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
            for ($c=0; $c < $num; $c++) {
                echo $data[$c] . "<br />\n";
            }
    }
    fclose($handle);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...