我想在php中动态设置来自数据库的内容限制。也就是说,我需要将数据设置为段落,但我需要在将数据分配给html段落之前修剪数据库中的输入。我尝试使用substr
。但是不可能成功。怎么做到这一点?
我到目前为止所做的代码如下所示。
<?php
foreach($conn->query("SELECT * FROM product_page ORDER BY id ASC LIMIT 10") as $st) {
echo'
<div class="col-md-4" style=" margin-bottom:50px;">
<div class="grid_7">
<div class="element">
<div class="grid">
<figure class="effect-apollo">
<img src="admin/'.$st['product_image'].'" alt="" />
<figcaption>
<h2></h2>
<p></p>
<a href="#"></a>
</figcaption>
</figure>
</div>
<h4>'.$st['product_name'].'</h4>
<p style="text-align:justify; ">'.$st['product_content'].'</p>
</div><!--end element-->
<div style="margin-left:20px;">
<a href="RFID.pdf" target="_blank" style="text-decoration:none;" ><div class="button"><i class="fa fa-download" style="width: 0px; height: 0px; background: none; margin: 0px 30px; float:none;"></i>Download Pdf</div></a>
</div><!--end -->
</div>
</div><!-- end col-md-4-->';
}
?>
答案 0 :(得分:0)
假设限制长度在$len
,那么
在foreach
块的开头添加此行。
$para = substr ( $st['product_content'] , 0 , $len );
(substr的参考)
现在替换
<p style="text-align:justify; ">'.$st['product_content'].'</p>
与
对齐 <p style="text-align:justify; ">'.$para.'</p>
<?php
$len = 50; //assuming the length is 50
foreach($conn->query("SELECT * FROM product_page ORDER BY id ASC LIMIT 10") as $st) {
$para = substr ( $st['product_content'] , 0 , $len );
echo'
<div class="col-md-4" style=" margin-bottom:50px;">
<div class="grid_7">
<div class="element">
<div class="grid">
<figure class="effect-apollo">
<img src="admin/'.$st['product_image'].'" alt="" />
<figcaption>
<h2></h2>
<p></p>
<a href="#"></a>
</figcaption>
</figure>
</div>
<h4>'.$st['product_name'].'</h4>
<p style="text-align:justify; ">'.$para .'</p>
</div><!--end element-->
<div style="margin-left:20px;">
<a href="RFID.pdf" target="_blank" style="text-decoration:none;" ><div class="button"><i class="fa fa-download" style="width: 0px; height: 0px; background: none; margin: 0px 30px; float:none;"></i>Download Pdf</div></a>
</div><!--end -->
</div>
</div><!-- end col-md-4-->';
}
?>