0

例如,我将如何获取变量的前几个单词,例如 $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>

任何帮助是极大的赞赏。

4

3 回答 3

0

您可以显示前 X 个字符(这里的 X 是 20):

    <div class="wordPreview">'.substr($data, 0, 20).'</div>
于 2013-04-10T21:57:54.667 回答
0

例如,您可以抓取前 200 个字符并仅将其显示为预览

$pos=strpos($data, ' ', 200);
$preview=substr($data,0,$pos );

这也将确保您将其拆分在单词中间的空格处

于 2013-04-10T21:56:43.873 回答
0

您可以在查询中使用 SUBSTRING_INDEX:

"SELECT author, SUBSTRING_INDEX(data, ' ', 5) data, ... FROM articlepreview ..."

这将只从字段中提取前 5 个单词data

于 2013-04-10T21:55:44.723 回答