我写这篇文章是因为我遇到了这个问题:
我有一个带有html字符的字符串。
我想要的是从这个字符串中删除所有小于10px宽度的图像。我怎么能用PHP做到这一点?
我一直在考虑使用一些循环,但我不知道如何实现它。有人可以帮帮我吗?
答案 0 :(得分:0)
你可以尝试
$final = array();
$images = array();
$template = "<img src='%d.jpg' height='%d' width='%d' />";
for($i = 0; $i < 10; $i++)
{
$height = mt_rand(9, 12);
$weight = mt_rand(9, 12);
$images[] = sprintf($template , $i,$height,$weight);
}
var_dump($images);
foreach($images as $image)
{
$attribute = simplexml_load_string($image);
$attribute = $attribute->attributes();
if((int) $attribute['height'] < 10 or (int) $attribute['width'] < 10)
continue ;
$final[] = $image;
}
var_dump($final);
输出
array
0 => string '<img src='0.jpg' height='11' width='9' />' (length=41)
1 => string '<img src='1.jpg' height='12' width='9' />' (length=41)
2 => string '<img src='2.jpg' height='10' width='11' />' (length=42)
3 => string '<img src='3.jpg' height='12' width='11' />' (length=42)
4 => string '<img src='4.jpg' height='11' width='9' />' (length=41)
5 => string '<img src='5.jpg' height='9' width='11' />' (length=41)
6 => string '<img src='6.jpg' height='9' width='9' />' (length=40)
7 => string '<img src='7.jpg' height='10' width='9' />' (length=41)
8 => string '<img src='8.jpg' height='12' width='9' />' (length=41)
9 => string '<img src='9.jpg' height='10' width='10' />' (length=42)
array
0 => string '<img src='2.jpg' height='10' width='11' />' (length=42)
1 => string '<img src='3.jpg' height='12' width='11' />' (length=42)
2 => string '<img src='9.jpg' height='10' width='10' />' (length=42)
答案 1 :(得分:-1)