Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Meniru Fungsi zip() Python dalam PHP?

Bagaimana untuk Meniru Fungsi zip() Python dalam PHP?

DDD
DDDasal
2024-11-28 05:17:17892semak imbas

How to Replicate Python's zip() Function in PHP?

PHP Setara dengan Python's zip() Function

Python's zip() function menyediakan cara yang mudah dan ringkas untuk menggabungkan berbilang senarai atau jujukan ke dalam satu lelaran tupel. Tuple mengandungi elemen pada indeks yang sepadan daripada setiap urutan input. Dalam PHP, tiada fungsi zip() terbina dalam. Walau bagaimanapun, anda boleh mencapai kefungsian yang sama menggunakan array_map().

Penyelesaian Menggunakan Peta Tatasusunan:

Selagi semua tatasusunan input mempunyai panjang yang sama, anda boleh menggunakan array_map () dengan null sebagai hujah pertama. Argumen nol mengabaikan parameter fungsi panggil balik dan menghantar semua tatasusunan input sebagai argumen kepada peta():

array_map(null, $a, $b, $c, ...);

Ini akan mengembalikan tatasusunan tupel, di mana setiap tuple mengandungi elemen pada indeks yang sepadan daripada setiap tatasusunan input . Sebagai contoh, diberikan tatasusunan input berikut:

$a = [1, 2, 3, 4];
$b = ['a', 'b', 'c', 'd'];
$c = ['x', 'y', 'z', 'w'];

Memanggil array_map() seperti yang ditunjukkan di bawah akan menghasilkan hasil berikut:

array_map(null, $a, $b, $c);
    [1, 'a', 'x']
    [2, 'b', 'y']
    [3, 'c', 'z']
    [4, 'd', 'w']

Nota: Jika beberapa tatasusunan input mempunyai panjang yang berbeza, ia akan dipadatkan dengan nilai nol kepada panjang tatasusunan terpanjang. Ini berbeza daripada Python's zip(), yang mengembalikan lelaran dengan panjang tatasusunan terpendek.

Atas ialah kandungan terperinci Bagaimana untuk Meniru Fungsi zip() Python dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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