PHP プログラムを作成するとき、データ操作を容易にするために、ファイルを読み取り、配列に変換する必要があることがよくあります。 php ファイルを配列に変換するのは一般的なタスクであり、次の方法で実行できます。
1. file_get_contents 関数を使用する
file_get_contents 関数は、ファイルを文字列として読み取ることができます。ファイルを文字列に読み取り、explode 関数を使用して、必要な区切り文字に基づいて文字列を配列に分割できます。たとえば、次の内容を含むファイル data.txt があります:
Tom:24 Jerry:25 Kate:28
次のコードを使用して、それを配列に変換できます:
$data = file_get_contents('data.txt'); $data_array = explode("\n", $data); foreach ($data_array as &$value) { $value = explode(':', trim($value)); } unset($value); print_r($data_array);
出力は次のとおりです:
Array ( [0] => Array ( [0] => Tom [1] => 24 ) [1] => Array ( [0] => Jerry [1] => 25 ) [2] => Array ( [0] => Kate [1] => 28 ) )
2. file 関数を使用します。
file 関数はファイル全体を配列として読み取り、各配列要素はファイル内の 1 行になります。したがって、 file 関数を直接使用して、ファイルを配列として読み取ることができます。たとえば、次の内容を含むファイル data.txt があります:
Tom:24 Jerry:25 Kate:28
次のコードを使用して、それを配列に変換できます:
$data_array = file('data.txt', FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); foreach ($data_array as &$value) { $value = explode(':', trim($value)); } unset($value); print_r($data_array);
出力は次のとおりです:
Array ( [0] => Array ( [0] => Tom [1] => 24 ) [1] => Array ( [0] => Jerry [1] => 25 ) [2] => Array ( [0] => Kate [1] => 28 ) )
3. fgets 関数を使用する
fgets 関数はファイルの内容を 1 行ずつ読み取ることができ、ループ内で fgets 関数を使用してファイルを配列として読み取ることができます。たとえば、次の内容を含むファイル data.txt があります:
Tom:24 Jerry:25 Kate:28
次のコードを使用して、それを配列に変換できます:
$handle = fopen('data.txt', 'r'); $data_array = array(); while (!feof($handle)) { $line = fgets($handle); if ($line !== false) { $line = explode(':', trim($line)); $data_array[] = $line; } } fclose($handle); print_r($data_array);
出力は次のとおりです:
Array ( [0] => Array ( [0] => Tom [1] => 24 ) [1] => Array ( [0] => Jerry [1] => 25 ) [2] => Array ( [0] => Kate [1] => 28 ) )
上記の 3 つの方法はいずれもファイルを配列に変換できますが、どの方法を選択するかは、実際のアプリケーションのシナリオによって異なります。ファイルの内容が小さい場合は、file_get_contents または file 関数を使用してファイルを文字列または配列に読み取り、それを配列操作に変換することをお勧めします。ファイルの内容が大きい場合は、fgets を使用することをお勧めします。ファイルの内容を一行ずつ読み取る関数。
以上がPHPファイルを配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。