[英]Use preg_match to find a specified string?
我在数据库中有一个很大的表(55MB),其中包含某些内容的数据。 每个字段都有自己的ID和描述字段。 我想做的是用PHP获得描述值。 好吧,我能做。 但是,当我尝试查找并替换某些“单词”时,问题就来了。
描述值可以如下:
连接超时,错误消息$ s1。
现在,这个“ $ s1”几乎可以是任何东西。 但是我想从描述字段中找到每个以“ $”开头的单词,并将其替换为正确的值。 在这种情况下,我想找到$ s1部分,然后将其设置为数组,然后将其替换为实际值。 例如$ s1593,$ d30,$ s2,$ a,$ r,$ z,$ o4 ...等。 基本上,$ s之后的数字可以在1到70000之间变化。如果有人可以将我指向正确的方向并教给我一些课程,则可以放置其余值。
哦,描述值也可以是:
$ o52与$ d2 $ s952的连接失败。
表imo非常烦人,但无法执行。 我只是无法编辑表格中的每个字段(51,000个字段)。
最诚挚的问候
编辑:这是示例代码!
include "../config.php";
function getErrorValue($id)
{
if (empty($id) || $id == 0)
{
return 0;
}
mysql_select_db("$database", $connect);
$query_geterrordata = mysql_query("SELECT * FROM dbc_error WHERE id='$id'");
while ($row_geterrordata = mysql_fetch_array($query_geterrordata))
{
if (!empty($row_geterrordata['field170']))
{
$temp_err = $row_geterrordata['field170']; // description field
//$err = preg_match don't know how to continue here
}
}
if (!empty($err))
{
return $err;
}
else
{
return "Error fetching the code.";
}
}
这将拉出所有以$开头的变量:
preg_match_all('/(\$[^ ]+)/', $temp_err, $matches);
print_r($matches[1]);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.