Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menghantar nilai tatasusunan ke dalam fungsi dalam php

Bagaimana untuk menghantar nilai tatasusunan ke dalam fungsi dalam php

PHPz
PHPzasal
2023-04-18 14:08:17734semak imbas

PHP, sebagai bahasa skrip sebelah pelayan yang popular, membantu pembangun membina aplikasi web yang kaya. Tatasusunan adalah salah satu struktur data yang paling biasa dan penting dalam PHP. Dalam PHP, tatasusunan boleh menyimpan sebarang jenis data, termasuk integer, nombor titik terapung, rentetan, objek, dsb. Selain itu, ia juga sangat mudah untuk beroperasi pada tatasusunan. Apabila menulis program PHP, kita selalunya perlu menghantar nilai tatasusunan kepada fungsi untuk diproses. Seterusnya, kami akan meneroka cara menghantar nilai tatasusunan kepada fungsi dalam PHP.

  1. Melalui parameter tatasusunan

Dalam PHP, kita boleh menghantar tatasusunan terus sebagai parameter kepada fungsi. Kelebihan ini ialah anda boleh menghantar keseluruhan tatasusunan ke dalam fungsi dan melaksanakan operasi yang sepadan. Berikut ialah contoh mudah:

<?php
function print_array($arr) {
   foreach ($arr as $value) {
      echo "$value ";
   }
}

$my_array = array(1, 2, 3, 4, 5);
print_array($my_array);
?>

Dalam contoh di atas, kami telah menentukan fungsi yang dipanggil "print_array" yang menerima tatasusunan sebagai parameter. Fungsi ini menggunakan gelung foreach untuk lelaran melalui keseluruhan tatasusunan dan mengeluarkan setiap elemen ke skrin. Dalam atur cara utama, kami mentakrifkan tatasusunan $my_array dan hantarkannya ke fungsi print_array untuk mengeluarkan semua elemennya. Output akan kelihatan seperti ini:

1 2 3 4 5
  1. Melalukan tatasusunan sebagai rujukan

Dalam PHP, fungsi boleh menghantar tatasusunan sebagai parameter rujukan. Ini bermakna fungsi boleh mengubah suai tatasusunan asal yang dihantar kepadanya, supaya perubahan pada tatasusunan selepas fungsi itu dilaksanakan masih wujud dalam atur cara. Berikut ialah contoh menghantar tatasusunan menggunakan rujukan:

<?php
function modify_array(&$arr) {
   $arr[0] = 100;
   $arr[1] = 200;
   $arr[2] = 300;
}

$my_array = array(1, 2, 3, 4, 5);
modify_array($my_array);
print_r($my_array);
?>

Dalam contoh di atas kami telah mentakrifkan fungsi yang dipanggil "modify_array" yang menggunakan simbol & untuk menunjukkan bahawa fungsi itu harus melepasi tatasusunan sebagai rujukan . Di dalam fungsi, kami mengubah suai nilai tiga elemen pertama tatasusunan. Dalam program utama, mula-mula kita mentakrifkan tatasusunan $my_array dan hantarkannya ke fungsi modify_array. Selepas melaksanakan fungsi, kami mengeluarkan $my_array untuk menyemak sama ada ia telah berubah. Outputnya adalah seperti berikut:

Array
(
    [0] => 100
    [1] => 200
    [2] => 300
    [3] => 4
    [4] => 5
)
  1. Melalui tatasusunan menggunakan senarai parameter variadic

Dalam PHP, kita boleh menghantar tatasusunan menggunakan senarai parameter variadic, ini Bermakna kita boleh menghantar bilangan argumen yang tidak diketahui dalam panggilan fungsi. Dalam definisi fungsi, kami menggunakan tiga titik (...) sebagai awalan nama parameter untuk menunjukkan penggunaan parameter variadic. Berikut ialah contoh menghantar tatasusunan menggunakan senarai argumen variadic:

<?php
function print_array_items(...$arr) {
   foreach ($arr as $value) {
      echo "$value ";
   }
}

$my_array = array(1, 2, 3, 4, 5);
print_array_items(...$my_array);
?>

Dalam contoh di atas, kami telah menentukan fungsi yang dipanggil "print_array_items" dan menghantar tatasusunan menggunakan argumen variadic senaraikannya. Di dalam fungsi, kami menggunakan gelung foreach untuk mengulangi semua parameter yang dihantar ke fungsi. Dalam program utama, kami mentakrifkan tatasusunan $my_array dan menggunakan operator ... untuk menghantarnya ke fungsi print_array_items. Outputnya adalah seperti berikut:

1 2 3 4 5
  1. Gunakan fungsi array_values ​​untuk menghantar array bersekutu

Dalam PHP, kita boleh menggunakan fungsi array_values ​​untuk menukar tatasusunan bersekutu kepada tatasusunan diindeks, dan hantarkannya ke fungsi. Dalam fungsi, kita boleh mengakses nilai tatasusunan bersekutu menggunakan tatasusunan indeks. Berikut ialah contoh menghantar tatasusunan bersekutu menggunakan fungsi array_values:

<?php
function print_array_items($arr) {
   foreach ($arr as $value) {
      echo "$value ";
   }
}

$my_assoc_array = array("a" => 1, "b" => 2, "c" => 3);
print_array_items(array_values($my_assoc_array));
?>

Dalam contoh di atas, kami telah menentukan fungsi yang dipanggil "print_array_items" dan menyerahkan hasil fungsi array_values ​​​​ke ia sebagai parameter. Dalam program utama, kami mentakrifkan tatasusunan bersekutu $my_assoc_array dan menukarnya menjadi tatasusunan diindeks menggunakan fungsi array_values. Kami kemudian menghantar tatasusunan yang diindeks ke fungsi print_array_items untuk mengeluarkan semua elemen di dalamnya. Outputnya kelihatan seperti ini:

1 2 3

Ringkasan

Dalam PHP, menghantar tatasusunan sebagai parameter kepada fungsi ialah operasi biasa. Kita boleh menggunakan parameter tatasusunan biasa, parameter rujukan, senarai parameter pembolehubah dan fungsi array_values ​​untuk mencapai pemindahan. Sama ada cara, menghantar tatasusunan sebagai parameter membolehkan kami mengendalikan siri data berkaitan dengan mudah dan berkongsi data antara fungsi dengan mudah. Ini memberikan kami bantuan besar dalam menulis program PHP yang cekap.

Atas ialah kandungan terperinci Bagaimana untuk menghantar nilai tatasusunan ke dalam fungsi 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