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.
Dapatkan jenis map[string]interface{}
因为我想允许同时包含 strings
和 integers
peta
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
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!