Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menggantikan elemen tatasusunan yang ditentukan dengan rentetan php

Bagaimana untuk menggantikan elemen tatasusunan yang ditentukan dengan rentetan php

PHPz
PHPzasal
2023-04-27 09:06:43572semak imbas

Dalam PHP, penggantian rentetan dan operasi tatasusunan adalah fungsi yang sangat biasa dan praktikal. Kadangkala kita perlu menggantikan kandungan tertentu dalam rentetan mengikut peraturan tertentu, atau mengendalikan elemen tertentu dalam tatasusunan. Artikel ini akan memperkenalkan fungsi berkaitan penggantian rentetan dan operasi tatasusunan dalam PHP, dan menerangkannya dengan contoh.

Penggantian rentetan

Terdapat banyak fungsi untuk penggantian rentetan dalam PHP, termasuk str_replace(), preg_replace(), dsb. Antaranya, fungsi str_replace() ialah fungsi penggantian rentetan yang paling biasa digunakan. Sintaks asas adalah seperti berikut:

str_replace($search, $replace, $subject);

Antaranya, $search mewakili rentetan yang akan ditemui dan diganti, $replace mewakili rentetan yang akan diganti, dan $subject mewakili rentetan asal yang akan diganti.

Berikut ialah contoh kod mudah:

<?php
 $str = "Hello, world!";
 $new_str = str_replace("world", "PHP", $str);
 echo $new_str;
?>

Hasil yang sedang dijalankan ialah: Hello, PHP!

Dalam aplikasi praktikal, kadangkala kita perlu membandingkan berbilang aksara dalam rentetan Kandungan diganti. Pada masa ini kita boleh menggunakan tatasusunan untuk melaksanakan beberapa set penggantian. Operasi khusus adalah seperti berikut:

<?php
  $str = "Hello, Alex!";
  $search_arr = array("Hello", "Alex");
  $replace_arr = array("Hi", "Peter");
  $new_str = str_replace($search_arr, $replace_arr, $str);
  echo $new_str;
?>

Hasil operasi ialah: Hai, Peter!

Perlu diambil perhatian bahawa fungsi penggantian rentetan dalam PHP tidak sensitif huruf besar-besaran, iaitu, jika pembolehubah mengandungi String case tidak sepadan dengan $search dan masih akan diganti. Jika anda perlu melakukan penggantian sensitif huruf besar-besaran, anda boleh menggunakan fungsi str_ireplace(). Penggunaannya pada asasnya sama seperti str_replace().

Operasi tatasusunan

Operasi tatasusunan PHP sangat mudah dan praktikal. Fungsi tatasusunan terbina dalam PHP menyediakan banyak fungsi untuk beroperasi pada tatasusunan, termasuk array_push(), array_pop(), dsb. Di bawah, kita akan menumpukan pada dua fungsi array_replace() dan array_replace_recursive(), dan cara mendapatkan nilai pada kedudukan yang ditentukan dalam tatasusunan.

Fungsi array_replace() digunakan untuk menggabungkan dan menggantikan dua tatasusunan dan mengembalikan tatasusunan baharu. Sintaksnya adalah seperti berikut:

 mixed array_replace ( array $array1 , array $array2 [, array $... ] )

Antaranya, $array1 mewakili tatasusunan asal yang perlu diganti, $array2 mewakili tatasusunan baharu yang digunakan untuk penggantian, $... mewakili tatasusunan tambahan pilihan, digunakan untuk lebih banyak operasi penggantian Tatasusunan.

Sebagai contoh, kami mempunyai dua tatasusunan, $arr1 dan $arr2, di mana $arr2 harus menggantikan kandungan dalam $arr1. Ini boleh dicapai melalui fungsi array_replace() Kod khusus adalah seperti berikut:

<?php
   $arr1 = array("a" => "apple", "b" => "banana");
   $arr2 = array("a" => "orange", "c" => "coconut");
   $new_arr = array_replace($arr1, $arr2);
   print_r($new_arr);
?>

Hasil pelaksanaan ialah:

Array ( [a] => orange [b] => banana [c] => coconut )

Dalam kod di atas, fungsi array_replace() menggantikan kandungan. daripada tatasusunan $arr2 kepada tatasusunan$ arr1, jadi dalam tatasusunan baharu akhirnya keluar, nilai dengan kunci "a" menjadi "oren".

Jika nama kunci yang sama wujud dalam $arr1 dan $arr2, maka dalam tatasusunan yang diganti menggunakan fungsi array_replace(), nilai yang sepadan dengan nama kunci yang sama akan digantikan dengan nilai yang sepadan dalam $arr2 sebaliknya daripada dilindungi. Jika anda memerlukan penggantian lengkap, anda boleh menggunakan fungsi array_merge().

Fungsi array_replace_recursive() adalah serupa dengan fungsi array_replace() dan juga digunakan untuk menggabungkan dan menggantikan tatasusunan. Walau bagaimanapun, fungsi array_replace_recursive() menyokong penggantian gabungan tatasusunan bersarang berbilang peringkat. Sintaks asas adalah seperti berikut:

 mixed array_replace_recursive ( array $array1 , array $array2 [, array $... ] )

adalah serupa dengan fungsi array_replace() $array1 dan $array2 mewakili tatasusunan asal dan tatasusunan baharu yang masing-masing perlu diganti $... mewakili tambahan pilihan tatasusunan.

Berikut ialah contoh kod:

<?php
  $arr1 = array("a" => array("apple", "apricot"), "b" => "banana");
  $arr2 = array("a" => array("orange"), "c" => "coconut");
  $new_arr = array_replace_recursive($arr1, $arr2);
  print_r($new_arr);
?>

Hasil pelaksanaan ialah:

Array ( [a] => Array ( [0] => orange [1] => apricot ) [b] => banana [c] => coconut )

Dalam kod di atas, $arr1 dan $arr2 mengandungi dua peringkat dan satu peringkat bersarang tatasusunan. Selepas menggabungkan dan menggantikan melalui fungsi array_replace_recursive(), nilai yang sepadan dengan kunci $a dalam tatasusunan baharu digantikan dengan nilai dalam $arr2, sambil mengekalkan elemen kedua "aprikot" dalam $arr1.

Selain menggabungkan dan menggantikan, mendapatkan nilai pada kedudukan tertentu dalam tatasusunan juga merupakan keperluan biasa dalam operasi tatasusunan PHP. Dalam PHP, anda boleh menggunakan [] atau {} untuk mengakses nilai pada kedudukan yang ditentukan dalam tatasusunan. Contohnya:

<?php
  $arr = array("apple", "banana", "watermelon");
  echo $arr[0];  // 输出"apple"
?>

[] digunakan di sini untuk mengakses elemen pertama dalam tatasusunan.

Jika anda ingin mengakses elemen subarray bersarang dalam tatasusunan, anda boleh menggunakan berbilang [] atau {}. Contohnya:

<?php
  $arr = array("fruit" => array("a" => "apple", "b" => array("banana", "blueberry")));
  echo $arr["fruit"]["b"][1];  // 输出"blueberry"
?>

Dalam kod di atas, elemen yang sepadan dengan kunci $b dalam tatasusunan $arr ialah tatasusunan dua dimensi dan elemen keduanya boleh diakses dengan mudah melalui berbilang [] atau {} .

Kesimpulan

Dalam pembangunan sebenar, operasi rentetan dan tatasusunan adalah fungsi yang sangat biasa dan praktikal. Melalui pengenalan dan contoh artikel ini, pembaca boleh menguasai dengan lebih baik fungsi berkaitan penggantian rentetan dan operasi tatasusunan dalam PHP, dan menggunakannya secara fleksibel pada kerja pembangunan mereka sendiri.

Atas ialah kandungan terperinci Bagaimana untuk menggantikan elemen tatasusunan yang ditentukan dengan rentetan 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