簡體   English   中英

preg_match 問題

[英]preg_match problem

我寫了這個 function:

public static function isDecimal($value, $places = 2)
    {
        if(preg_match("/^[0-9]+(\.[0-9]{".$places."})?$/", $value)) {
            return true;
        } else {
            return false;
        }
    }

它旨在測試輸入的值是否為數字/十進制數。 但是,如果我輸入數字“23c.32”或“2b3.23”,它將返回為真。 誰能指出我的正則表達式的錯誤在哪里?

該正則表達式很好,如果您將它與您提供的示例一起使用,它會返回 false。

它在這里工作得很好。 問題必須在 function 調用附近的某個地方。

您可能想查看is_numeric()is_float()

內置功能似乎可以滿足您的需求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM