Php 在多个产品的While循环中使用Substr

Php 在多个产品的While循环中使用Substr,php,substring,Php,Substring,我试图只显示我的项目细节的一部分,并且在我的while循环中实现了substr。然而,它适用于我的第一个产品,但我的第二个产品只显示“…”而不是前7个字符 while($row = mysqli_fetch_array($sql)){ $id = $row["id"]; $product_name = $row["product_name"]; $price = $row["price"]; $details = $row["details"];

我试图只显示我的项目细节的一部分,并且在我的while循环中实现了substr。然而,它适用于我的第一个产品,但我的第二个产品只显示“…”而不是前7个字符

while($row = mysqli_fetch_array($sql)){ 
    $id = $row["id"]; 
    $product_name = $row["product_name"]; 
    $price = $row["price"]; 
    $details = $row["details"]; 
    if (strlen($details) > 10){
        $details1 = substr($details, 0, 7) . '...';
    } else {
        $details1 = $details;
    }
    $date_added = strftime("%b %d, %Y", strtotime($row["date_added"])); 
    $dynamicList .= '<div class="contentImage"><a href="product.php?id=' . $id .'"><img src="images/stock_images/' . $id . '.png" alt="' . $product_name .'" width="136" height="97"></a></div> 
            <div class="contentDes"><strong>' . $product_name .'</strong><br> 
            Price: £' . $price .'<br> 
                    ' . $details1 . '<br> 
                    <a href="product.php?id=' . $id .'">View Product</a></div>'; 
}
while($row=mysqli\u fetch\u数组($sql)){
$id=$row[“id”];
$product_name=$row[“product_name”];
$price=$row[“price”];
$details=$row[“details”];
如果(strlen($details)>10){
$details1=substr($details,0,7)。“…”;
}否则{
$details1=$details;
}
$date\u added=strftime(“%b%d,%Y”,strotime($row[“date\u added”]);
$dynamicList='
。$product\u name.
价格:....$价格。
“.$details1”。
'; }
或者:

  if (strlen($details) > 7){
        $details1 = substr($details, 0, 7) . '...';
    }


我在上面的代码中已经有了这一点,正如我在最初的帖子中提到的,它是有效的,但只适用于第一个产品。第二个产品仅显示“…”代码看起来不错,数据库中的
详细信息的值是多少?@SAVAFA它们是“这里我们有装饰”和“这里我们有围栏面板”,当我使用上述代码时,我的第二个产品会显示“这里我们…”和“…”
 if (strlen($details) > 10){
        $details1 = substr($details, 0, 10) . '...';
    }