簡體   English   中英

是否可以在PHP中為此語句創建三元運算符?

[英]Is it possible to create a ternary operator for this statement in PHP?

    function integer($str)
    {
        if(preg_match('/[^0-9]/', $str)) 
        { 
           return FALSE;
        }

        else
        {
           return $str;
        }
    }

是否可以在PHP中為此語句創建三元運算符?

是:

function integer($str) {
  return (preg_match('/[^0-9]/', $str) ? false : $str);
}

您應該使用ctype_digit

function integer($str) {
    return ctype_digit($str) ? $str : false;
}

或者將filter_varFILTER_VALIDATE_INT一起FILTER_VALIDATE_INT

function integer($str) {
    return filter_var($str, FILTER_VALIDATE_INT, array(
        'options' => array('min_range' => 0),
        'flags' => FILTER_FLAG_ALLOW_OCTAL
    ));
}

暫無
暫無

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

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