【发布时间】:2014-03-26 14:57:29
【问题描述】:
我有几个想要处理的值(主要是字符串),我想知道哪种方式最适合我的情况。
我将拥有一个 foreach 循环,我想在其中检查并插入数据库中的编辑值。
结构示例:
foreach($values as $value)
{
//string check is going to be here
// .....
//insert the data into the database
$sql = "INSERT INTO results VALUES ('', 'xx', 'xx', 'xx', 'xx')";
$result = mysql_query($sql);
}
我可能得到的值示例:
- 价值,价值
- 宇宙某处
- 3.532523, -55.523525
- 价值-价值
我想要做的是不接受(实际上将它们的值更改为'Not given')
a) 数字 b) 长度超过 10 个字符的字符串 c) 单词之间没有空格 d) 如果有 , 或 - 仅在这些之前保留字符串的第一部分例如,我正在测试的字符串检查是否有这样的值 => 字符串,字符串 我只想保留第一部分,由
$str = value, value $str = substr($str, 0, stripos($str, ','));
使用哪种技术可以更好地完成所有这些检查? (preg_match & replace or substr & stipos)
【问题讨论】:
-
“编程时间比机器时间更宝贵”。最简单的就是最好的,至少在这里:处理时间差异在您的情况下可能非常微不足道(不过,RegEx 更有趣,我承认)