Bagaimana untuk Mengesahkan Tatasusunan PHP untuk Kandungan Integer dengan Berkesan?

Susan Sarandon
Lepaskan: 2024-10-17 13:53:29
asal
263 orang telah melayarinya

How to Validate PHP Arrays for Integer Content Effectively?

Pengesahan Tatasusunan yang Cekap untuk Kandungan Integer

Dalam PHP, mengesahkan sama ada tatasusunan mengandungi integer secara eksklusif boleh dicapai melalui pelbagai pendekatan. Walaupun lelaran manual dan semakan bersyarat adalah pilihan yang berdaya maju, terdapat penyelesaian yang lebih ringkas menggunakan fungsi PHP asli.

Menapis dengan array_filter

Fungsi array_filter menawarkan kaedah yang mudah dan cekap untuk tugasan ini. Ia menapis tatasusunan berdasarkan fungsi panggil balik yang disediakan, mengembalikan tatasusunan baharu yang mengandungi hanya elemen yang memenuhi syarat. Dalam kes kami, kami boleh menggunakan fungsi is_int terbina dalam sebagai panggilan balik untuk mengasingkan elemen integer:

<code class="php">$only_integers       === array_filter($only_integers,       'is_int'); // true
$letters_and_numbers === array_filter($letters_and_numbers, 'is_int'); // false</code>
Salin selepas log masuk

Abstraksi dengan Fungsi Tertib Tinggi

Untuk meningkatkan kebolehbacaan dan kebolehgunaan semula kod, kami boleh menentukan fungsi pembantu yang menyamaratakan proses pengesahan kami. Fungsi ini memanfaatkan fungsi tertib lebih tinggi, yang beroperasi pada fungsi sebagai hujah, memberikan fleksibiliti yang lebih besar.

<code class="php">// Check if all array elements pass the predicate
function all($elems, $predicate) {
  foreach ($elems as $elem) {
    if (!call_user_func($predicate, $elem)) {
      return false;
    }
  }

  return true;
}

// Check if any array element passes the predicate
function any($elems, $predicate) {
  foreach ($elems as $elem) {
    if (call_user_func($predicate, $elem)) {
      return true;
    }
  }

  return false;
}</code>
Salin selepas log masuk

Dengan bantuan ini, pengesahan asal kami menjadi ungkapan ringkas dan deklaratif:

<code class="php">all($only_integers,       'is_int'); // true
any($letters_and_numbers, 'is_int'); // false</code>
Salin selepas log masuk

Invokasi Ringkas

Untuk memudahkan lagi proses pengesahan, kami boleh merangkum pembantu dalam fungsi tersuai yang menerima tatasusunan dan mengembalikan bendera boolean:

<code class="php">function array_has_only_ints($array) {
  return all($array, 'is_int');
}</code>
Salin selepas log masuk

Fungsi ini menyediakan con

Atas ialah kandungan terperinci Bagaimana untuk Mengesahkan Tatasusunan PHP untuk Kandungan Integer dengan Berkesan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!