Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengisih nombor IP yang diberikan dalam PHP

Bagaimana untuk mengisih nombor IP yang diberikan dalam PHP

藏色散人
藏色散人asal
2021-08-13 11:02:123344semak imbas

Mengenai masalah pengisihan dalam PHP, anda boleh membaca bahagian "Penyisihan Tatasusunan PHP" dahulu dalam manual pengenalan PHP Selepas memahami tertentu tentang pengisihan tatasusunan, artikel ini akan memperkenalkan kepada anda caranya Isih semua tatasusunan mengikut IP yang diberikan.

Mari kita mulakan topik artikel ini:

Kod PHP adalah seperti berikut:

<?php
function sort_subnets ($x, $y) {
    $x_arr = explode(&#39;.&#39;, $x);
    $y_arr = explode(&#39;.&#39;, $y);
    foreach (range(0,3) as $i) {
        if ( $x_arr[$i] < $y_arr[$i] ) {
            return -1;
        }
        elseif ( $x_arr[$i] > $y_arr[$i] ) {
            return 1;
        }
    }
    return -1;
}

$subnet_list =
    array(&#39;192.169.12&#39;,
        &#39;192.167.11&#39;,
        &#39;192.169.14&#39;,
        &#39;192.168.13&#39;,
        &#39;192.167.12&#39;,
        &#39;122.169.15&#39;,
        &#39;192.167.16&#39;
    );
usort($subnet_list, &#39;sort_subnets&#39;);
var_dump($subnet_list);

Hasilnya ialah:

array (size=7)
  0 => string &#39;122.169.15&#39; (length=10)
  1 => string &#39;192.167.11&#39; (length=10)
  2 => string &#39;192.167.12&#39; (length=10)
  3 => string &#39;192.167.16&#39; (length=10)
  4 => string &#39;192.168.13&#39; (length=10)
  5 => string &#39;192.169.12&#39; (length=10)
  6 => string &#39;192.169.14&#39; (length=10)

Bagaimana untuk mengisih nombor IP yang diberikan dalam PHP

Di sini kami memperkenalkan kepada anda fungsi yang terlibat dalam kod di atas:

explode()Fungsi fungsi adalah menggunakan satu rentetan untuk memisahkan rentetan lain dan mengembalikan Tatasusunan yang terdiri daripada rentetan, sintaksnya ialah "explode(separator,string,limit)", parameter "pemisah" tidak boleh menjadi rentetan kosong. Fungsi

参数分别表示:
separator:在哪里分割字符串。
string:要分割的字符串。
limit可选:所返回的数组元素的数目。
可能的值有:
大于0:返回包含最多 limit 个元素的数组;
小于0:返回包含除了最后的 -limit 个元素以外的所有元素的数组;
0:会被当做 1, 返回包含一个元素的数组。

range() digunakan untuk mencipta tatasusunan yang mengandungi elemen dalam julat yang ditentukan Sintaksnya ialah "range(low,high,step)"; parameter rendah adalah lebih besar daripada parameter tinggi, tatasusunan yang dibuat akan dari tinggi ke rendah.

usort() digunakan untuk mengisih tatasusunan menggunakan fungsi perbandingan yang ditentukan pengguna Sintaksnya ialah "usort(array,myfunction);".

Akhir sekali, saya ingin mengesyorkan "Tutorial Video PHP" yang terkini dan paling komprehensif kepada semua orang~ Datang dan belajar!

Atas ialah kandungan terperinci Bagaimana untuk mengisih nombor IP yang diberikan 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