ตัวแยกวิเคราะห์ html dom อย่างง่าย แยกลิงก์ข้อความทั้งหมดโดยไม่มีลิงก์รูปภาพ

ฉันใช้โค้ดนี้เพื่อแยกวิเคราะห์ URL ในเอาต์พุตฉันมีลิงก์ข้อความทั้งหมดและรูปภาพลิงก์ทั้งหมด แต่ฉันต้องการเพียงลิงก์ข้อความเท่านั้น ฉันจะทำอย่างไร?

$linkbox = array();
foreach($html -> find('a') as $link)
{
  linkbox[] = $link -> outertext;
}

person Деструктивная Л&    schedule 11.03.2015    source แหล่งที่มา
comment
ลองจับภาพ $link->href ไหม   -  person Anirudh Ramanathan    schedule 11.03.2015
comment
ไม่ทำงาน มันจะง่ายเกินไป   -  person Деструктивная Л&    schedule 11.03.2015


คำตอบ (1)


PHP DomDocument ใช่ไหม? ถ้าใช่ - บางทีคุณอาจต้องการคุณสมบัติ textContent:

linkbox[] = $link->textContent;

หรือหากคุณต้องการ href:

linkbox[] = $link->getAttribute("href");
person user3476487    schedule 11.03.2015
comment
ฉันมีลิงก์แบบอาร์เรย์ แต่ฉันต้องการเพียงลิงก์ข้อความเท่านั้น โดยไม่มีลิงก์รูปภาพ - person Деструктивная Л&; 11.03.2015
comment
คุณต้องลบแท็กรูปภาพออกจากข้อความ หรือลบลิงก์ทั้งหมดที่มีแท็ก img หากเป็นอย่างที่สอง คุณสามารถใช้ $link-›childNode เพื่อค้นหาแท็ก img และใช้งานกับลิงก์ไม่ได้หากพบ - person user3476487; 11.03.2015