Dinamik yüklü Biçimlendirme içinde Kaldır / Düzenle Bağlantıları

3 Cevap

<a href="myexample.com"></a> boş dönmesi gerekir gibi açıklama

3 Cevap

Eğer url dinamik içeriği değiştirmek istiyorsanız, düzenli ifadeler, ya phpQuery, HTML içindeki bağlantıları ararken bir çok yöntemi kullanmak sağlayacak hangi kullanarak ve değiştirme gibi kolay bir yöntemle bunu yapabilirsiniz onların HREF özniteliği.

phpQuery::newDocument("externalPage.html");
pq("a")->href("");

Ben bir süre için phpQuery kullanılmaz, ama ben bu hile yapacağını inanıyorum. Kaldırmak için çalışıyoruz bağlantıları navigasyon varsa da, rss beslemeleri, vs, size artık istediğiniz bölümü içinde olmayan bağlantıları kaldırmak olurdu yani, externalPage yalnızca belirli bir kısmını geri dönmek için phpQuery kullanabilirsiniz .

Örneğin, "articleBox" bir kimliği olan bir DIV içinde var harici sayfasından bir yazı almak için çalışıyorsanız, bunu yapabilirsiniz:

pq("div#articleBox");

Bunun içinde sadece belirli öğe ve içeriği dönecekti.

Sen PHPSimpleHTMLDOMParser ile çalışmak daha kolay olduğunu görebilirsiniz. Burada ana sayfasında parçaları kazımak için slashdot karşı kullanmak için nasıl bir örnek:

// Create DOM from URL
$html = file_get_html('http://slashdot.org/');

// Find all article blocks
foreach($html->find('div.article') as $article) {
    $item['title'] = $article->find('div.title', 0)->plaintext;
    $item['intro'] = $article->find('div.intro', 0)->plaintext;
    $item['details'] = $article->find('div.details', 0)->plaintext;
    $articles[] = $item;
}

print_r($articles);

(http://us3.php.net/manual/en/function.strip-tags.php), bu yüzden, bir dize tüm html etiketlerini kaldıracak php strip_tags işlevini kullanın:

$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo strip_tags($text);

Çıktı "Test paragraf. Diğer metin", ve sana verdiğim örnek boş dönmek olurdu. Eğer var ise siz de izin vermek istediğiniz bazı etiketleri belirtebilirsiniz unutmayın, hala kullanmak istiyorum.

Eğer zorlama veri bağlantıları gizlemek için çalışıyorsunuz? Eğer öyleyse, belki size {ayarlayarak tüm <a> etiketlerini> gizlemek için (div veya span) sadece o metne CSS uygulayabilirsiniz [(3)] olabilir }.