質問

simplephpdom を取得 a hrefリンク値をこのコード:

$html = file_get_html($url);
foreach($html->find('a') as $element) $array[] = $element->href . '<br>'; 

今、その問題点をした場合には、リンクをはじめスラッシュ(/)をクリックする有効でない!

方法を教えてください有効なリンク?

例えば、リンクは以下のようになっています:

<a href="/news45454.html">Test link</a>

を利用した場合、phpsimpledomコードします:

/news45454.html

でも、たいて

http://example.com/news45454.html

どこ?

でした試験の場合、リンクしたらスラッシュ、それがすべてのサイトのurlをしていきたいと思います。いかがですか?

役に立ちましたか?

解決

基本的に必要な試験の場合、HREFの要素が有効な。場合の検証券では見ていて気分が良いものに追加したりす配列になります。ただし、検証に失敗した場合、必要な連結、basename(すべきウェブサイトのドメイン).

$html = file_get_html($url);
foreach($html->find('a') as $element) {
    if(filter_var($url, FILTER_VALIDATE_URL)) {
        // Valid URL, add to array.
        $array[] = $element->href . '<br>'; 
    } else {
        // URL is invalid, add basename.
        $array[] = basename($url) . $element->href . '<br>';
    }
}

この場合に必要なビットの調整のためのその他の場合など <a href="#"> されてもらう状況でどについて解説する。

他のヒント

削スラッシュの使用

string stripcslashes ( string $str )

もの PHPマニュアル:stripcslashes

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top