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ì đó'; Giờ mình muốn lấy đường dẫn ảnh : https://itseovn.com/styles/default/xenforo/logo.png thì làm sao?
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ỗifor($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ả.