Вопрос

По сути, вот мой файл CSV:

1,"Gold"
2,"English Version"
10,"Sword+0"
11,"Sword+1"
12,"Sword+2"

И так далее, вы получаете идею. Есть и другие части, где идентификатор не инкремент, возможно, один составляет 2899, а затем следующий - 3020. Я пытаюсь построить массив из этого с FGETCSV ();. Я могу сделать это хорошо, но я так далеко не удалось сопоставить свои идентификаторы массива с идентификатором от CSV.

Вот простой, который просто создает инкрементное массив из файла:

$file = fopen("item_proto.csv", "r");
$i = 1;
while(! feof($file)){
  $gvar['item'][$i] = (fgetcsv($file));  
  $i++;
  }
fclose($file);

Это, конечно, приводит к:

Array
(
    [item] => Array
        (
            [1] => Array
                (
                    [0] => 1
                    [1] => Gold
                )

            [2] => Array
                (
                    [0] => 2
                    [1] => English Version
                )

            [3] => Array
                (
                    [0] => 10
                    [1] => Sword+0

Но я бы хотел [item] [x], чтобы соответствовать [item] [x] [y].

Это было полезно?

Решение

Попробуй это:

$file = fopen("item_proto.csv", "r");
$i = 1;
while(! feof($file)){
  $line = fgetcsv($file);
  $gvar['item'][$line[0]] = $line;
  $i++;
  }
fclose($file);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top