Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Semak sama ada pembolehubah ialah rentetan/int/float?

Semak sama ada pembolehubah ialah rentetan/int/float?

PHPz
PHPzke hadapan
2024-02-09 18:00:10696semak imbas

检查变量是否为 string/int/float?

Editor PHP akan memperkenalkan anda cara menyemak sama ada pembolehubah ialah nombor rentetan, integer atau titik terapung. Dalam PHP, kita boleh menggunakan beberapa fungsi terbina dalam untuk mencapai tujuan ini. Mula-mula, gunakan fungsi is_string() untuk menyemak sama ada pembolehubah adalah daripada jenis rentetan. Jika benar dikembalikan, ini bermakna pembolehubah adalah daripada jenis rentetan. Seterusnya, gunakan fungsi is_int() untuk menyemak sama ada pembolehubah adalah daripada jenis integer. Begitu juga, jika benar dikembalikan, ini bermakna pembolehubah adalah jenis integer. Akhir sekali, gunakan fungsi is_float() untuk menyemak sama ada pembolehubah adalah daripada jenis titik terapung. Begitu juga, jika benar dikembalikan, ini bermakna pembolehubah adalah jenis titik terapung. Dengan menggunakan fungsi ini, kita boleh menyemak jenis pembolehubah dengan mudah dan melaksanakan operasi yang sesuai mengikut keperluan.

Kandungan soalan

Dapatkan jenis map[string]interface{} 因为我想允许同时包含 stringsintegers peta

ini

Tetapi bagaimana untuk menukar peta kepada map[string]string dan mengembalikan ralat jika mana-mana nilai "tidak disokong"?

value, ok := v.(string)

Jika nilai ialah integer, ralat akan dilemparkan

Penyelesaian

Go menyokong suis taip:

Untuk kes penggunaan anda ia akan kelihatan seperti:

m := map[string]string{}
for k,v := range values {
    switch value := v.(type) {
        switch value := v.(type) {
        case int:
            m[k] = fmt.Sprintf("%v", value)

        case float64:
            m[k] = fmt.Sprintf("%v", value)

        case string:
            m[k] = fmt.Sprintf("%v", value)

       default:
            return nil,fmt.Errorf("unknown type %T", v)
    }
}

return m,nil

Jika anda mahu, anda boleh menggabungkan kes ini menjadi satu kes, contohnyahttps://www.php.cn/link/658953f1f681915f543a40eef9acb562

Atas ialah kandungan terperinci Semak sama ada pembolehubah ialah rentetan/int/float?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam