首页 > 解决方案 > \n 用文本打断显示,如何显示换行符而不是 \n 文本

问题描述

所以,在数据库数据库-> InnoDB sava as -> text

来自 textarea 的文本被保存为例如:“Awesome\nmake me rich\nnever give up”

因此,php 应该将 \n 读取为换行符,但我得到的纯文本类似于上面的示例。

我用来显示数据的部分代码:

$sql = "SELECT * FROM card";
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_assoc($result);
$text = $row['text'];
function main2($text){
    $this -> AddFont('DejaVu','','DejaVuSansCondensed.ttf',true);
    $this -> AddFont('DejaVu','B','DejaVuSansCondensed-Bold.ttf',true);
    $this -> SetFont('DejaVu','',14);
    $this -> Cell(200,10,$text,0,1,'C');
}
$pdf->main2($text)

我需要使用生成的数据创建 pdf ......

我该怎么办?

标签: phpsql

解决方案


我认为Cell不接受正常的换行符。

您可以从 MySQL 字符串中删除每个\n字符串并用它“替换”它$fpdf->ln(height)(请参阅FPDF 文档)。

$str_arr = explode("\n", $text);

foreach($str_arr as $line) {
    $this->Cell(200, 10, $line, 0, 1, 'C');     
    $this->Ln(10); // end with line break   
}

推荐阅读