次のようなhtml行がある場合:
<a href="your.link-and-stuf.php" title="here your page title and stuf">this word</a>
「この言葉」をphpで抜け出してほしい。str_replace()を試してみましたが、うまくいきませんでした。リンクが変わるからです。
では、どうすればこれを行うことができますか?
単純な解決策は、組み込み関数を使用することですstrip_tags
複雑な解決策は正規表現を使用します
ストリップ タグの実装
$str = '<a href="your.link-and-stuf.php" title="here your page title and stuf">this word</a>';
$strip = strip_tags($str);
echo $strip; // this word
正規表現マッチング
$str = '<a href="your.link-and-stuf.php" title="here your page title and stuf">this word</a>';
$strip = preg_replace("/<\\/?a(\\s+.*?>|>)/", "", $str); // removes only a tags
echo $strip; // this word
$doc = new DOMDocument();
$doc->loadHTML('<a href="your.link-and-stuf.php" title="here your page title and stuf">this word</a>');
echo $doc->getElementsByTagName('a')->item(0)->nodeValue;
simplehtmldomのようなライブラリを使用します。
コードは次のようになります。
$html = str_get_html('<a href="your.link-and-stuf.php" title="here your page title and stuf">this word</a>');
$text = $html->find('a', 0)->innerText;