Rumah > pembangunan bahagian belakang > masalah PHP > Apakah cara baharu untuk menulis tatasusunan php?

Apakah cara baharu untuk menulis tatasusunan php?

PHPz
Lepaskan: 2023-04-23 13:46:51
asal
505 orang telah melayarinya

PHP ialah bahasa skrip sebelah pelayan yang biasa digunakan yang boleh menjana kandungan web dinamik dengan cepat. Salah satu struktur data yang paling biasa digunakan dalam PHP ialah tatasusunan, tetapi ramai pembangun mungkin hanya mengetahui salah satu kaedah penulisan tetap, dan tidak tahu bahawa terdapat banyak kaedah dan teknik penulisan baharu. Artikel ini akan memperkenalkan kaedah penulisan baharu PHP tatasusunan.

1. Tambah elemen

Perkara yang paling asas ialah menambah elemen pada tatasusunan, biasanya menggunakan kaedah penulisan $array[] = $value yang mudah difahami. Walau bagaimanapun, anda juga boleh menambah nilai pada penghujung tatasusunan dengan menggunakan fungsi array_push().

$array = array();
array_push($array, 'apple', 'banana', 'cherry');
print_r($array); // Array ( [0] => apple [1] => banana [2] => cherry )
Salin selepas log masuk

Anda juga boleh menambah elemen dalam kelompok menggunakan nama kunci, yang membolehkan anda menggabungkan satu tatasusunan ke yang lain.

$array1 = array('a', 'b', 'c');
$array2 = array('d' => 'dog', 'e' => 'elephant');
$result = $array1 + $array2;
print_r($result); // Array ( [0] => a [1] => b [2] => c [d] => dog [e] => elephant )
Salin selepas log masuk

2. Padam elemen

Biasanya anda boleh menggunakan fungsi unset() untuk memadamkan elemen tatasusunan.

$array = array('apple', 'banana', 'cherry');
unset($array[1]);
print_r($array); // Array ( [0] => apple [2] => cherry )
Salin selepas log masuk

Anda juga boleh menggunakan fungsi array_splice() untuk memadamkan elemen tertentu daripada tatasusunan. Ia juga boleh mengembalikan elemen yang dialih keluar selepas mengalih keluarnya.

$array = array('apple', 'banana', 'cherry');
$res = array_splice($array, 1, 1); // 在第1个位置开始,删除1个元素
print_r($array); // Array ( [0] => apple [1] => cherry )
print_r($res); // Array ( [0] => banana )
Salin selepas log masuk

3. Salin Tatasusunan

Anda biasanya boleh menggunakan kaedah penulisan $copy = $array untuk menyalin tatasusunan, tetapi kaedah penulisan ini hanya menyalin rujukan, iaitu penunjuk bagi nama pembolehubah. Dengan cara ini, apabila salah satu tatasusunan diubah suai, tatasusunan yang lain juga akan berubah.

Cara sebenar untuk menulis salinan ialah menggunakan fungsi $copy = array_slice($array), supaya semua elemen boleh disalin.

$array = array('apple', 'banana', 'cherry');
$copy = array_slice($array);
print_r($copy); // Array ( [0] => apple [1] => banana [2] => cherry )
Salin selepas log masuk

4. Dapatkan elemen

Apabila mendapat elemen tatasusunan, kaedah penulisan $element = $array[$index] biasanya digunakan. Walau bagaimanapun, jika elemen itu tidak wujud, ralat akan berlaku. Anda boleh menggunakan fungsi isset() untuk menyemak sama ada unsur wujud.

$array = array('apple', 'banana', 'cherry');
if (isset($array[1])) {
    $element = $array[1];
    echo $element; // banana
} else {
    echo 'not found';
}
Salin selepas log masuk

Anda juga boleh menggunakan fungsi array_key_exists() untuk menyemak sama ada kunci wujud.

$array = array('d' => 'dog', 'e' => 'elephant');
if (array_key_exists('e', $array)) {
    $value = $array['e'];
    echo $value; // elephant
} else {
    echo 'not found';
}
Salin selepas log masuk

5. Isih

PHP mempunyai banyak fungsi pengisihan, termasuk sort(), rsort(), asort(), arsort(), ksort(), krsort(), dsb. Penggunaannya juga agak mudah. Walau bagaimanapun, jika anda ingin mengisih berdasarkan kunci dalam tatasusunan, anda perlu menggunakan fungsi usort() dan menyediakan fungsi isihan tersuai.

function cmp($a, $b) {
    if ($a['age'] == $b['age']) {
        return 0;
    }
    return ($a['age'] < $b[&#39;age&#39;]) ? -1 : 1;
}
$array = array(
    array(&#39;name&#39; => 'John', 'age' => 23),
    array('name' => 'Mary', 'age' => 25),
    array('name' => 'Peter', 'age' => 21)
);
usort($array, 'cmp');
print_r($array); // Array ( [0] => Array ( [name] => Peter [age] => 21 ) [1] => Array ( [name] => John [age] => 23 ) [2] => Array ( [name] => Mary [age] => 25 ) )
Salin selepas log masuk

6. Melintasi

Melintasi tatasusunan ialah salah satu tugas yang paling penting dalam pembangunan PHP Anda boleh menggunakan foreach() untuk menggelung melalui tatasusunan.

$array = array('apple', 'banana', 'cherry');
foreach ($array as $value) {
    echo $value . ' ';
}
// apple banana cherry
Salin selepas log masuk

Anda juga boleh menggunakan foreach() untuk melintasi tatasusunan bersekutu.

$array = array('d' => 'dog', 'e' => 'elephant');
foreach ($array as $key => $value) {
    echo $key . ': ' . $value . ' ';
}
// d: dog e: elephant
Salin selepas log masuk

Beberapa penambahan

Apabila menggunakan tatasusunan PHP, anda perlu memberi perhatian kepada isu berikut:

  1. Tatasusunan dalam PHP sebenarnya ialah peta tersusun , bukannya senarai ringkas.
  2. Subskrip tatasusunan boleh berupa integer dan rentetan, dan kunci dan nilai boleh berupa mana-mana jenis data PHP.
  3. Array dalam PHP adalah dinamik dan elemen boleh ditambah, dipadam dan diubah suai pada bila-bila masa. Ini menjadikannya sangat mudah untuk digunakan, tetapi kadangkala boleh membawa kepada akibat yang tidak diingini.
  4. Tatasusunan PHP mempunyai banyak fungsi berguna lain, seperti array_merge(), array_filter(), array_reduce(), dsb.

Kesimpulan

Dalam PHP, tatasusunan ialah struktur data yang sangat berguna yang membolehkan banyak teknik pengaturcaraan yang menarik. Artikel ini memperkenalkan beberapa kaedah dan teknik penulisan tatasusunan baharu, membolehkan pembangun menggunakan tatasusunan dalam PHP dengan lebih baik untuk memproses data. Saya harap artikel ini dapat membantu pembangun PHP.

Atas ialah kandungan terperinci Apakah cara baharu untuk menulis tatasusunan php?. 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