我有一個數據庫,其中包含一系列獨特的URL,它們都包含帶有「://」的前導http或https。 。一些網址還在字符串中增加了「//」。PHP/MYSQL搜索多個子字符串(反斜槓)並修復數據行
我有三個問題需要解決。
首先,我需要找到所有具有額外雙向正斜槓的行,並且不會從前導http獲得誤報。第二,我需要str_replace「/」與「/」而不影響領先的「http://」和「https://」,以便我可以更新該行。
第三,刪除行,如果它是重複的,因爲行已經被插入沒有雙正斜槓。
我不知道如何跳過MYSQL命令中第一次出現「//」......非常確定我可以自己解決其他兩個問題,如果我能夠過去找到不好的網址。
$sql = "SELECT * FROM `search` WHERE `url` NOT LIKE 'http://'
OR NOT LIKE 'https://' AND LIKE '%//%'" ;
['parse_url()'](http://php.net/manual/en/function.parse -url.php)可能對你有些用處...... –
雙向轉發已經在數據庫中。所以我正在尋找一種方法在mysql中識別它們。 parse_url在它們被插入之前工作,但是在每次更新和檢查時運行整個數據庫都沒有意義。 – Wolfe
'WHERE url LIKE'http://%//%'or url LIKE'https://%//%'' – AbraCadaver