Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk mengesan sama ada tatasusunan mengandungi rentetan dalam php

Bagaimana untuk mengesan sama ada tatasusunan mengandungi rentetan dalam php

青灯夜游
青灯夜游asal
2022-07-22 19:24:287017semak imbas

Dua kaedah pengesanan: 1. Gunakan fungsi in_array untuk mengesan sama ada tatasusunan mengandungi nilai jenis yang ditentukan Sintaksnya ialah "in_array('string', array, true)", jika nilai pulangan adalah BENAR. Termasuk, jika tidak, tidak disertakan. 2. Gunakan fungsi array_search() untuk mengesan sama ada array mengandungi nilai jenis yang ditentukan Sintaksnya ialah "array_search('string', array, true)". PALSU dikembalikan, ia tidak termasuk.

Bagaimana untuk mengesan sama ada tatasusunan mengandungi rentetan dalam php

Persekitaran pengendalian tutorial ini: sistem Windows 7, versi PHP 8.1, komputer DELL G3

php mengesan sama ada tatasusunan mengandungi tertentu Terdapat dua kaedah untuk rentetan:

  • Gunakan fungsi in_array untuk mengesan

  • Gunakan fungsi array_search() untuk mengesan

Kaedah 1: Gunakan fungsi in_array untuk mengesan fungsi

in_array() boleh mencari sama ada array mengandungi nilai tertentu wujud, ia mengembalikan BENAR, jika ia tidak wujud, ia mengembalikan FALSE .

in_array($needle, $array[, $strict = FALSE])

Penerangan parameter adalah seperti berikut:

  • $needle: ialah nilai yang hendak dicari Jika $needle ialah rentetan, perbandingannya ialah huruf kecil-. sensitif;

  • $array: ialah tatasusunan yang hendak dicari;

  • Jika $strict kosong atau FALSE, fungsi in_array() hanya akan menyemak sama ada nilai $needle adalah sama dengan nilai dalam $array; $strict Nilainya BENAR, fungsi in_array() bukan sahaja akan menyemak nilai dalam $needle dan $array, tetapi juga membandingkan jenisnya untuk kesamaan.

    • Jika anda ingin menggunakan fungsi in_array untuk mengesan sama ada tatasusunan mengandungi rentetan tertentu, anda hanya perlu menetapkan parameter pertama kepada rentetan yang ditentukan dan parameter ketiga kepada Adakah BENAR (digunakan untuk memastikan bahawa jenis nilai elemen dan nilai carian adalah konsisten)

Kaedah 2: Gunakan array_search () fungsi untuk mengesan

<?php
header("Content-type:text/html;charset=utf-8");
$array = array(
    &#39;name&#39;  =>&#39;PHP中文网&#39;,
    &#39;url&#39;   =>&#39;https://www.php.cn/&#39;,
    &#39;title&#39; =>&#39;PHP教程&#39;,
    &#39;pid&#39;   =>1234
);
var_dump($array);
if(in_array(&#39;PHP教程&#39;, $array, true)){
    echo &#39;数组中包含字符串“PHP教程”<br><br>&#39;;
}else{
    echo &#39;数组中不包含字符串“PHP教程”<br><br>&#39;;
}
if(in_array(&#39;1234&#39;, $array, true)){
    echo &#39;数组中包含字符串“1234”<br><br>&#39;;
}else{
    echo &#39;数组中不包含字符串“1234”<br><br>&#39;;
}
?>

array_search() fungsi boleh mencari nilai yang diberikan dalam tatasusunan, dan jika berjaya, mengembalikan nama kunci pertama yang sepadan Format sintaks fungsi ini adalah seperti berikut:

$haystack: ialah tatasusunan;

$strict: Parameter pilihan, boleh kosong, lalai ialah Palsu.

Jika $strict ialah False, array_search() hanya akan membandingkan nilai, bukan jenis, apabila mencari $needle dalam $haystack.


Jika $strict adalah Benar, array_search() membandingkan kedua-dua nilai dan jenis apabila mencari $needle dalam $haystack.

array_search($needle, $haystack[, $strict = false])

    array_search() fungsi mengembalikan kunci $needle jika ia ditemui, jika tidak ia mengembalikan False.
    • Nota: Jika $needle muncul lebih daripada sekali dalam $haystack, hanya kunci padanan pertama akan dikembalikan. Untuk mengembalikan semua kunci yang sepadan dengan nilai, fungsi array_keys() harus digunakan.
    • Pembelajaran yang disyorkan: "
    • Tutorial Video PHP
    • "

Atas ialah kandungan terperinci Bagaimana untuk mengesan sama ada tatasusunan mengandungi rentetan 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