以下是来自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'
);
}
}
答案 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'
);
}
}