在文本中找到Url并在mysql数据库中将其擦除

时间:2016-10-24 07:20:58

标签: php mysql wordpress

我需要做的是:

  1. 在长文本字段中找到网址文字。
  2. 从文字中删除网址。
  3. 使用新值更新文本字段。
  4. 到目前为止,我可以使用以下代码在长文本中找到Url:

    SELECT colomname FROM tablename
     WHERE colomname REGEXP "(https?:\/\/|www\.)[\.A-Za-z0-9\-]+\.[a-zA-Z]{2,4}"
    

1 个答案:

答案 0 :(得分:0)

首先在SELECT查询中,不要只选择包含文本的列名,还要选择记录的id。您可以使用查询结果并在php中循环它。在循环中你会做:

foreach ($data as $item) {
    $text = preg_replace('/https?://|www.)[.A-Za-z0-9-]+.[a-zA-Z]{2,4}/', '', $item['columnname']);

    $pdoData = [':text' => $text, ':id' => $id];
    $stmt = $pdo->prepare('UPDATE table SET columnname=:text WHERE id=:id');
    $stmt->execute($pdoData);
}