iou3344 2023-01-07 21:39 采纳率: 85.2%
浏览 15
已结题

php将字符串拆分成数组并输出为指定样式的结构

$string = “123.jpg@123#456.jpg@456#789.jpg@789#abc.jpg@abc”
用PHP将用@和#相连的上述字符串拆分并输出为以下形式

<div class="card actress">
    <a href="/card/123"><img class="xx" src="123.jpg"></a>
    <div class="card-body">
        <h6 class="card-title"><a href="/card/123">123</a></h6>
    </div>
</div>

<div class="card actress">
        <a href="/card/456"><img class="xx" src="456.jpg"></a>
        <div class="card-body">
            <h6 class="card-title"><a href="/card/456">456</a></h6>
        </div>
</div>

<div class="card actress">
        <a href="/card/789"><img class="xx" src="789.jpg"></a>
        <div class="card-body">
            <h6 class="card-title"><a href="/card/789">789</a></h6>
        </div>
</div>

<div class="card actress">
        <a href="/card/abc"><img class="xx" src="abc.jpg"></a>
        <div class="card-body">
            <h6 class="card-title"><a href="/card/abc">abc</a>
        </h6>
        </div>
</div>

我猜大概是下面这样写,但是就是写不出来想要的结果。

$string = “123.jpg@123#456.jpg@456#789.jpg@789#abc.jpg@abc”
$arr = preg_split("/(#l@)/" ,$string);
$length = strlen($arr);
$thisWord = array();
for ($i=0; $i<$length; $i++) {
$thisWord[$i] = $string[$i];
}
  • 写回答

2条回答 默认 最新

  • ShowMeAI 2023-01-07 23:16
    关注

    可以参考如下代码

    $string = "123.jpg@123#456.jpg@456#789.jpg@789#abc.jpg@abc";
    $items = explode("#", $string);
    foreach($items as $item) {
        list($img, $name) = explode("@", $item);
        echo '<div class="card actress">';
        echo '<a href="/card/' . $name . '"><img class="xx" src="' . $img . '"></a>';
        echo '<div class="card-body">';
        echo '<h6 class="card-title"><a href="/card/' . $name . '">' . $name . '</a></h6>';
        echo '</div></div>';
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月16日
  • 已采纳回答 1月8日
  • 创建了问题 1月7日

悬赏问题

  • ¥15 oracle集群安装出bug
  • ¥15 关于#python#的问题:自动化测试
  • ¥20 问题请教!vue项目关于Nginx配置nonce安全策略的问题
  • ¥15 教务系统账号被盗号如何追溯设备
  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 再不同版本的系统上,TCP传输速度不一致
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题