1

テーブルからテキストを抽出し、それをテキストファイルにダンプするスクリプトがあります。テキストファイルにURLだけが表示されるように、URLだけを削除してください。

{
$result = @mysql_query("SELECT post_content_filtered FROM wp_posts ORDER BY post_date desc limit 200");
$tsv  = array();
$html = array();
while($row = mysql_fetch_array($result, MYSQL_NUM)){
    $tsv[]  = implode("\t", $row);
    $html[] = "<tr><td>" .implode("</td><td>", $row) ."</td></tr>";
}

$tsv = implode("\r\n", $tsv);
$html = "<table>" . implode("\r\n", $html) . "</table>";
$fileName = 'finishedflippa.txt';
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$fileName");
echo $tsv;

post_content_filteredテキストは次のようになります。

blahblahblah http://www.example.com blahblahblah
blahblahblah http://www.12345.com blahblahblah
blahblahblah http://www.gfds.com blahblahblah
blahblahblah http://www.45tyhju.com blahblahblah

これblahblahblahは各行で同じです。どうもありがとう。

4

1 に答える 1

6

URLの定義は非常に複雑です

あなたはこの単純な試合を試すことができますpreg_match_all

$str = 'text looks something like this: 
blahblahblah http://www.example.com blahblahblah 
blahblahblah http://www.12345.com blahblahblah 
blahblahblah http://www.gfds.com blahblahblah 
blahblahblah http://www.45tyhju.com blahblahblah ' ;

preg_match_all('!https?://[\S]+!', $str, $matches);
var_dump($matches[0]);
于 2012-10-12T13:09:39.073 に答える