表格上的preg_replace

时间:2013-03-10 06:24:37

标签: php preg-replace

以下是来自php表单。我想通过删除任何非数字字符来格式化值。我认为pregreplace是最好的选择,但我不确定如何实现它。

非常感谢任何帮助。代码如下。

if(isset($_GET['price-max'])) {
    if($_GET['price-max'] >= 1) {
        $args['meta_query'][] = array(
            'key' => 'pyre_price',
            'value' => $_GET['price-max'],
            'compare' => '<=',
            'type' => 'numeric'
        );
    }
}

2 个答案:

答案 0 :(得分:1)

这应该可以解决问题。

$value = preg_replace('/[^0-9]+/', '', $value);

用空字符串替换不是0-9的所有字符。有关该功能的文档,请参阅preg_replace()。您可能还想查看PCRE regex syntax

答案 1 :(得分:0)

解决以下问题:

$valuemax = $_GET['price-max'];

$valuemax = preg_replace('/[^0-9]+/', '', $valuemax);

if(isset($_GET['price-max'])) {

if($_GET['price-max'] >= 1) {

    $args['meta_query'][] = array(

        'key' => 'pyre_price',

        'value' => $valuemax,

        'compare' => '<=',

        'type' => 'numeric'

    );

}

}