【发布时间】:2016-07-26 20:43:03
【问题描述】:
我一直在使用一个插件,这个插件有一个自定义字段检查,它似乎不起作用。下面是用于检查具有特定条件的自定义字段的插件代码。
<?php if ($custom_field_value != null) {
if (($set['condition']['value']['operator'] == 'is' && $set['condition']['value']['value'] == $custom_field_value)
|| ($set['condition']['value']['operator'] == 'is_not' && $set['condition']['value']['value'] != $custom_field_value)
|| ($set['condition']['value']['operator'] == 'contains' && preg_match($set['condition']['value']['value'], $custom_field_value)) //The problematic line.
|| ($set['condition']['value']['operator'] == 'does_not_contain' && !preg_match($set['condition']['value']['value'], $custom_field_value))
|| ($set['condition']['value']['operator'] == 'lt' && $set['condition']['value']['value'] < $custom_field_value)
|| ($set['condition']['value']['operator'] == 'le' && $set['condition']['value']['value'] <= $custom_field_value)
|| ($set['condition']['value']['operator'] == 'eq' && $set['condition']['value']['value'] == $custom_field_value)
|| ($set['condition']['value']['operator'] == 'ge' && $set['condition']['value']['value'] >= $custom_field_value)
|| ($set['condition']['value']['operator'] == 'gt' && $set['condition']['value']['value'] > $custom_field_value)) {
$proceed = true;
}
}?>
问题在于“包含”行,并在我的 debug.log 中给出以下错误:
PHP 警告:preg_match():分隔符不能是字母数字或反斜杠
检查用于检查自定义字段是否包含“30”、“text1”或“text2”。
现在我在这里可能是错的,但我相信我在这里没有使用任何分隔符。这里可能出了什么问题?
【问题讨论】:
标签: php wordpress plugins preg-match contains