Lấy đường dẫn src thẻ <img hình ảnh trong chuỗi HTML code PHP

Thảo luận trong 'Ngôn ngữ lập trình web PHP' bắt đầu bởi seolagi, 24/11/17.

  1. seolagi

    seolagi

    Moderator

    Thành viên BQT

    Tham gia ngày:
    16/4/14
    Bài viết:
    956
    Đã được thích:
    77
    Điểm thành tích:
    28
    Hi mọi người, em có 1 chuỗi truyền vào là chuỗi HTML dài thòng lòng lấy được từ bài viết trong database, giờ em muốn lấy toàn bộ thẻ src của hình ảnh đó (img) thì làm như thế nào.
    VD:
    PHP:
    $html 'hình ảnh <img border="0" src="https://itseovn.com/styles/default/xenforo/logo.png" alt="Image" width="100" height="100"/> nội dung bài viết về lấy gì đó';
     
    Cảm ơn đã xem bài:

    Lấy đường dẫn src thẻ <img hình ảnh trong chuỗi HTML code PHP

  2. admin

    admin Phạm Công Sơn Thành viên BQT

    Tham gia ngày:
    22/5/13
    Bài viết:
    4,616
    Đã được thích:
    1,130
    Điểm thành tích:
    113
    Giới tính:
    Nam
    Của bạn đây nhé

    Cách 1: lấy toàn bộ hình ảnh trong chuỗi html truyền vào.
    PHP:
    $html 'hình ảnh <img border="0" src="https://itseovn.com/styles/default/xenforo/logo.png" alt="Image" width="100" height="100"/> nội dung bài viết về lấy gì đó...nhiều đường dẫn hình khác nếu có';
    preg_match_all('@src="([^"]+)"@'$html $match_img);  //tìm src="X" or src='X'
    $srcimg array_pop($match_img);// chuyên list hình sang dạng chuỗi
    for($i=0;$i<count($srcimg);$i++){
       if(
    $srcimg[$i]!='')
       {
           
    //xử lý bạn muốn... với $srcimg[$i] là đường dẫn tấm hình 
       
    }
    }
    Cách 2: lấy 1 tấm hình đầu tiên trong chuỗi truyền vào
    PHP:
    $html 'hình ảnh <img border="0" src="https://itseovn.com/styles/default/xenforo/logo.png" alt="Image" width="100" height="100"/> nội dung bài viết về lấy gì đó';
    preg_match('/(src=["\'](.*?)["\'])/'$html$match);  //Tìm kiếm thẻ src của chuỗi truyền vào
    $split preg_split('/["\']/'$match[0]); // split chuỗi này để lấy hình ảnh cho vào mảng
    $src $split[1]; //lấy nó ra thôi. Nếu nhiều hình bạn dùng hàm for hoặc foreach để lấy nhé.
    echo $src//hiển thị kết quả.
     
    Chỉnh sửa cuối: 1/5/18


Like và Share ủng hộ ITSEOVN