如何获取变量的前几个单词,例如$data。我试图创建一个文章预览部分,该变量是一篇文章。我只是想展示它的预览。
<?php
$sql = "SELECT author, data, postdate, Title, previewimg FROM articlepreview ORDER BY RAND() LIMIT 1";
$query = mysqli_query($db_conx,$sql);
$prev = "";
while ($row = mysqli_fetch_array($query, MYSQLI_ASSOC)) {
$a = $row["author"];
$data = $row["data"];
$postdate = $row["postdate"];
$title = $row["Title"];
$previewimg = $row["previewimg"];
$prev .= '
<div class="wrapPreviewArticle">
<div style="headerPreview"><h4>'.$title.'</h4></div>
<div class="wrapPreviewRow">
<div style="imagePreview"><img src="'.$previewimg.'" height="20%" width="20%" alt="'.$title.'" /></div>
<div clas="wordPreview">'.$data.'</div>
</div>
</div>
';
}
?>
一旦我得到这个,我就会输出变量
<body>
<div><?php echo $prev; ?></div> <!--with only the desired portion.-->
</body>
您可以在查询中使用SUBSTRING_INDEX:
"SELECT author, SUBSTRING_INDEX(data, ' ', 5) data, ... FROM articlepreview ..."
这将只从字段data
中提取前5个单词。
例如,你可以抓取前200个字符,并仅将其作为预览
$pos=strpos($data, ' ', 200);
$preview=substr($data,0,$pos );
这也将确保你在空格处分割它而不是在单词的中间
可以显示前X个字符(这里X是20):
<div class="wordPreview">'.substr($data, 0, 20).'</div>