如何从 HTML 标签代码中获取特定字符串并检查字符串中是否存在 <img> 标签?
How to get the specific string from the HTML tag code and check existence of <img> tag in a string?
我有两个 HTML 代码。其中之一肯定会出现在变量 $text
中,如下所示:
//First HTML code
$text = <a class="comment_attach_file_link" href="https://www.filepicker.io/api/file/vuHOZ3n8ToyvQUDQ03zi">vuHOZ3n8ToyvQUDQ03zi</a>
<a class="comment_attach_file_link_dwl" href="https://www.filepicker.io/api/file/vuHOZ3n8ToyvQUDQ03zi">Download</a>;
//Second HTML code
$text = <a title="" href="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws"><img src="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws" height="150px" width="150px"></a>
<a href="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws" class="comment_attach_image_link_dwl">Download</a>;
如果第一个 HTML 代码存在,变量 $type
应该包含值 'file',如 $type = 'file';
如果存在第二个 HTML 代码,则变量 $type
应包含值 'image',如 $type = 'image';
我想使用 HTML 解析来实现。
在第一种情况下,我想要来自第一个锚标记 class="comment_attach_file_link"
的 class 属性的字符串 'file'
在第二种情况下,仅当 HTML 代码中存在 <img>
标记时,我才需要字符串 'image'。
我应该如何在 PHP 中高效地执行此操作?请帮助我。
谢谢。
您可以使用 strpos() 来做到这一点:
<?php
$text = '<a title="" href="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws"><img src="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws" height="150px" width="150px"></a>
<a href="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws" class="comment_attach_image_link_dwl">Download</a>';
if (strpos($text,'class="comment_attach_file_link"') !== false) {
echo 'file';
}
elseif (strpos($text,'<img') !== false) {
echo 'image';
}
?>
可以通过jquery "$('#id').attr('class')"轻松完成。您将获得 class 值。
与图像相同。
我有两个 HTML 代码。其中之一肯定会出现在变量 $text
中,如下所示:
//First HTML code
$text = <a class="comment_attach_file_link" href="https://www.filepicker.io/api/file/vuHOZ3n8ToyvQUDQ03zi">vuHOZ3n8ToyvQUDQ03zi</a>
<a class="comment_attach_file_link_dwl" href="https://www.filepicker.io/api/file/vuHOZ3n8ToyvQUDQ03zi">Download</a>;
//Second HTML code
$text = <a title="" href="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws"><img src="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws" height="150px" width="150px"></a>
<a href="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws" class="comment_attach_image_link_dwl">Download</a>;
如果第一个 HTML 代码存在,变量 $type
应该包含值 'file',如 $type = 'file';
如果存在第二个 HTML 代码,则变量 $type
应包含值 'image',如 $type = 'image';
我想使用 HTML 解析来实现。
在第一种情况下,我想要来自第一个锚标记 class="comment_attach_file_link"
在第二种情况下,仅当 HTML 代码中存在 <img>
标记时,我才需要字符串 'image'。
我应该如何在 PHP 中高效地执行此操作?请帮助我。
谢谢。
您可以使用 strpos() 来做到这一点:
<?php
$text = '<a title="" href="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws"><img src="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws" height="150px" width="150px"></a>
<a href="https://www.filepicker.io/api/file/xdA3uDwdTWydvK7ISlws" class="comment_attach_image_link_dwl">Download</a>';
if (strpos($text,'class="comment_attach_file_link"') !== false) {
echo 'file';
}
elseif (strpos($text,'<img') !== false) {
echo 'image';
}
?>
可以通过jquery "$('#id').attr('class')"轻松完成。您将获得 class 值。 与图像相同。