Hình ảnh hợp lệ: logo-3png-1752569761698.png
Hình ảnh không hợp lệ: static-fica-logo.1-0-1.2435f041ebf869641575.jpg
Hình ảnh không hợp lệ: static-dti-logo.1-0-1.bcb3ae7a10b2d69d8762.svg
Hình ảnh không hợp lệ: static-noivu-xahoi-logo.1-0-1.a4f3595fd7126fe8f384.svg
Hình ảnh hợp lệ: ngay-hoi-non-song-va-trong-trach-truoc-nhan-dan-1773916644556.jpg
Hình ảnh hợp lệ: z763710333654489135fc08960146145dc3a06d494dccd-1773918181126.jpg
Hình ảnh hợp lệ: tphcm-tinh-viec-doi-tru-so-sap-xep-gio-lam-viec-cac-co-quan-de-giam-un-tac-1773918410890.jpg
Hình ảnh hợp lệ: malaysia2nst21-2-26-cropped-1773914489574.jpg
Hình ảnh hợp lệ: tphcm-thu-hoi-hon-5-1773916120055.jpg
Hình ảnh hợp lệ: iran1-ezgifcom-crop-1773788735049.gif
Hình ảnh hợp lệ: bui-hoai-son-crop-1743987148256.jpeg
Hình ảnh hợp lệ: ngoc-thuy13-edited-cropped-1773892937635.jpg
Hình ảnh hợp lệ: z76340049608771276bd2ca2b219636bf23ce196525858-cropped-1773838657657.jpg
Hình ảnh không hợp lệ: svg+xml;charset=utf-8,%3Csvg xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox%3D'0 0 150 100'%3E%3Crect x='0' y='0' width='100%' height='100%' style='fill:rgb(241, 245, 249)' %2F%3E%3C%2Fsvg%3E
Hình ảnh không hợp lệ: svg+xml;charset=utf-8,%3Csvg xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox%3D'0 0 150 100'%3E%3Crect x='0' y='0' width='100%' height='100%' style='fill:rgb(241, 245, 249)' %2F%3E%3C%2Fsvg%3E
Hình ảnh không hợp lệ: svg+xml;charset=utf-8,%3Csvg xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox%3D'0 0 150 100'%3E%3Crect x='0' y='0' width='100%' height='100%' style='fill:rgb(241, 245, 249)' %2F%3E%3C%2Fsvg%3E
Hình ảnh không hợp lệ: svg+xml;charset=utf-8,%3Csvg xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox%3D'0 0 150 100'%3E%3Crect x='0' y='0' width='100%' height='100%' style='fill:rgb(241, 245, 249)' %2F%3E%3C%2Fsvg%3E
Hình ảnh không hợp lệ: svg+xml;charset=utf-8,%3Csvg xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox%3D'0 0 150 100'%3E%3Crect x='0' y='0' width='100%' height='100%' style='fill:rgb(241, 245, 249)' %2F%3E%3C%2Fsvg%3E
Hình ảnh không hợp lệ: svg+xml;charset=utf-8,%3Csvg xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox%3D'0 0 150 100'%3E%3Crect x='0' y='0' width='100%' height='100%' style='fill:rgb(241, 245, 249)' %2F%3E%3C%2Fsvg%3E
Hình ảnh không hợp lệ: svg+xml;charset=utf-8,%3Csvg xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg' viewBox%3D'0 0 150 100'%3E%3Crect x='0' y='0' width='100%' height='100%' style='fill:rgb(241, 245, 249)' %2F%3E%3C%2Fsvg%3E
<?php
// Lấy toàn bộ nội dung HTML từ trang báo điện tử Dân trí
$url = file_get_contents('https://dantri.com.vn/');
// Khởi tạo đối tượng DOM để phân tích HTML
$doc = new DOMDocument(); // Tạo đối tượng DOM
// Bỏ qua các lỗi cú pháp HTML khi load (tránh cảnh báo)
libxml_use_internal_errors(true);
// Nạp nội dung HTML vừa lấy vào đối tượng DOM
$doc->loadHTML($url);
// Lấy tất cả các thẻ <img> trong tài liệu HTML
$images = $doc->getElementsByTagName('img');
// Biểu thức chính quy kiểm tra file hình ảnh hợp lệ
$file_pattern = '/^[a-zA-Z0-9_-]+\.(jpg|jpeg|png|gif)$/';
// Duyệt qua từng thẻ <img> để kiểm tra tên file ảnh
$count = 0;
$maxCount = 20;
foreach ($images as $image) {
$count++;
/** @var DOMElement $image */ // Khai báo kiểu dữ liệu cho biến $image (PHPDoc)
// Lấy đường dẫn (src) của ảnh
$src = $image->getAttribute('src');
// Lấy tên file từ đường dẫn ảnh
$file_name = basename($src); // basename() trả về phần tên file
// Kiểm tra tên file có khớp với biểu thức chính quy không
if (preg_match($file_pattern, $file_name)) {
// Hợp lệ thì in ra thông báo
echo "Hình ảnh hợp lệ: $file_name\n". "<br>";
} else {
// Không hợp lệ cũng in thông báo
echo "Hình ảnh không hợp lệ: $file_name\n". "<br>";
}
if($count>=$maxCount){
break;
}
}
?>