Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menukar fail php kepada array

Bagaimana untuk menukar fail php kepada array

PHPz
Lepaskan: 2023-04-25 10:02:49
asal
562 orang telah melayarinya

Apabila menulis program PHP, kita selalunya perlu membaca fail dan menukarnya kepada tatasusunan untuk memudahkan manipulasi data. Menukar fail php kepada tatasusunan adalah tugas biasa dan boleh dicapai melalui kaedah berikut.

1. Gunakan fungsi file_get_contents
Fungsi file_get_contents boleh membaca fail sebagai rentetan. Kita boleh membaca fail ke dalam rentetan dan kemudian menggunakan fungsi letupan untuk memisahkan rentetan itu kepada tatasusunan berdasarkan pembatas yang kita perlukan. Sebagai contoh, kami mempunyai fail data.txt yang mengandungi kandungan berikut:

Tom:24
Jerry:25
Kate:28
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Anda boleh menggunakan kod berikut untuk menukarnya kepada tatasusunan:

$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);
Salin selepas log masuk

Output akan adalah seperti berikut:

Array
(
    [0] => Array
        (
            [0] => Tom
            [1] => 24
        )

    [1] => Array
        (
            [0] => Jerry
            [1] => 25
        )

    [2] => Array
        (
            [0] => Kate
            [1] => 28
        )

)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

2 Gunakan fungsi fail
Fungsi fail membaca keseluruhan fail sebagai tatasusunan, dan setiap elemen tatasusunan ialah satu baris dalam fail. Oleh itu, kita boleh terus menggunakan fungsi fail untuk membaca fail sebagai tatasusunan. Sebagai contoh, kami mempunyai fail data.txt yang mengandungi kandungan berikut:

Tom:24
Jerry:25
Kate:28
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Anda boleh menggunakan kod berikut untuk menukarnya kepada tatasusunan:

$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);
Salin selepas log masuk

Output akan menjadi seperti berikut:

Array
(
    [0] => Array
        (
            [0] => Tom
            [1] => 24
        )

    [1] => Array
        (
            [0] => Jerry
            [1] => 25
        )

    [2] => Array
        (
            [0] => Kate
            [1] => 28
        )

)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

3. Gunakan fungsi fgets
Fungsi fgets boleh membaca kandungan fail baris demi baris Kita boleh menggunakan fungsi fgets dalam gelung untuk membaca fail sebagai tatasusunan . Sebagai contoh, kami mempunyai fail data.txt yang mengandungi kandungan berikut:

Tom:24
Jerry:25
Kate:28
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Anda boleh menggunakan kod berikut untuk menukarnya kepada tatasusunan:

$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);
Salin selepas log masuk

Output akan adalah seperti berikut:

Array
(
    [0] => Array
        (
            [0] => Tom
            [1] => 24
        )

    [1] => Array
        (
            [0] => Jerry
            [1] => 25
        )

    [2] => Array
        (
            [0] => Kate
            [1] => 28
        )

)
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Tiga kaedah di atas boleh menukar fail kepada tatasusunan Kaedah yang manakah untuk dipilih bergantung pada senario aplikasi sebenar. Jika kandungan fail adalah kecil, adalah disyorkan untuk menggunakan fail_get_contents atau fungsi fail untuk membaca fail ke dalam rentetan atau tatasusunan, dan kemudian menukarnya kepada operasi tatasusunan jika kandungan fail adalah besar, adalah disyorkan untuk menggunakan fgets berfungsi untuk membaca kandungan fail baris demi baris.

Atas ialah kandungan terperinci Bagaimana untuk menukar fail php kepada array. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan