我正在为IMified网络编写机器人。
我想通过仅在我的脚本中接受某些值来过滤我的机器人处理的项目。
这就是我现在正在使用的:
$items = array('botkey', 'userkey', 'network', 'user', 'channel', 'msg', 'step');
foreach ($_POST as $key => $value)
{
if (in_array($key, $items) || preg_match('value\d*', $key))
{
$this->data[$key] = $value;
}
}
value1234
或类似名称(“值”+数字)的键,但它不会让任何东西通过。答案 0 :(得分:2)
总有一种更好的方法,但是 - 只要你在代码中加入一些污点/健全性检查,你就可以了。
您的正则表达式语法错误。尝试:
preg_match('/^value\d+$/', $key)
答案 1 :(得分:1)
我认为它应该是preg_match('/ value \ d * /',$ key)
我认为这是解决问题的一个很好的方法