PHP解析值+来自数据库值的URL数据

时间:2017-10-02 06:27:31

标签: php

首先抱歉我的英语不好

好的,我在向我的网站显示数据时遇到了麻烦

我有这样的脚本:

<a href="123" data-popup="lightbox" btn-rounded">

此数据:123是数据库中的值。但有时我的数据包含这样的

<img src="http://xxx/images/abc.gif">

所有数据都没有img src,但是当img src出现时我的网址就像这样:

<a href="123 <img src="http://xxx/images/abc.gif">" data-popup="lightbox" btn-rounded">

我在使用strpos后尝试使用explode来查找特定的单词

$string = '123 <img src="http://www.xxx/images/abc.gif">';
$array=explode(" ",$string); 
echo $array[0];
echo $array[1];

但结果只显示值123

如何解析我的值和img src数据?

无论如何,这是我目前的PHP脚本

<?PHP
    $res=$mySite->GetUpdateManga(12);
    while($data=mysqli_fetch_array($res)){
    echo 
    '<div class="col-lg-3 col-sm-6">
    <div class="thumbnail">
    <div class="thumb">
        <img src="http://xxx'.$data['manga_pic'].'" class="lazy" style="height:269px;" alt="" />
    <div class="caption-overflow">
    <span>';
        if (strpos($data['last_chapter'], '<img src="http://xxx//images/hot.gif">' OR '<img src="http://xxx/images/hot.gif"')  !== false) {
            echo '<a href="'.$data['last_chapter'].'" data-popup="lightbox" class="btn border-white text-white btn-flat btn-icon btn-rounded">';
        }
        else {
            $array=explode("<",$data['last_chapter']);
            echo '<a href="'.$array[0].'"'.'<'.$array[1].' data-popup="lightbox" class="btn border-white text-white btn-flat btn-icon btn-rounded">';           
        }
        echo '<i class="icon-book3"></i></a>
    </span>
    </div>
    </div>

    <div class="caption">
        <h6 class="no-margin-top text-semibold">
            <a href="'.$data['manga_link'].'" class="text-default">'.$data['manga_name'].'</a>
        </h6> beberapa jam nyang lalu
    </div>

    <div class="panel-footer no-padding">
        <a href="series/read.php" class="btn btn-default btn-block no-border">Baca Chapter '.$data['last_chapter'].'</a>
    </div>
    </div>
    </div>

    ';
    }
?>

由于

1 个答案:

答案 0 :(得分:0)

你只需要按<分隔符进行爆炸。操作explode后,<标记中的img字符将被删除。您必须再次将其添加到结果字符串中,如下所示:

$string = '123 <img src="http://www.xxx/images/abc.gif">';
$array=explode("<",$string); 
echo '<'.$array[1];
preg_match_all('!\d+!', $array[0], $matches);
$number = $var = implode(' ', $matches[0]);
echo $number;