无法将 mySQL 数据库条目文本“\n”转换为 Angular 中的“<br>”?
Cannot convert mySQL database entries text '\n' to '<br>'in Angular?
我可以从数据库中读取数据到我的 angular 应用程序,但我的文本中只给出了静态 \n
而不是新行。我知道我应该将所有 \n
事件转换为 <br />
但我没有这样做,即使使用 echo nl2br;
//extract from my php file
if($result = mysqli_query($con, $sql))
{
$animals = [];
$cr = 0;
while($row = mysqli_fetch_assoc($result))
{
$animals[$cr]['animal'] = $row['animal'];
$animals[$cr]['t1'] = $row['title1'];
$animals[$cr]['p1'] = $row['paragraph1'];
$cr++;
}
echo nl2br($animals);
echo json_encode($animals);
下面是我的angular文件
//extract from my animals.component.html file
<div class="container" *ngFor="let animal of this.animals">
{{animal.t1}}
{{animal.p1}}
{{animal.t2}}
</div>
但是,我在网页上的输出(来自 animal.t1
)与数据库条目的文本相同:
Animals \n are \n fun \n .
我尝试了很多不同的方法,但似乎无法将 \n
转换为 <br>
。有人对此有任何建议吗?
使用nl2br
:
$animals[$cr]['t1'] = nl2br($row['title1']);
nl2br
采用字符串而不是数组。如果你 select 查询中的列就容易多了。只需映射行数组:
// SELECT animal, t1, p1 FROM table WHERE .....
while($row = mysqli_fetch_assoc($result))
{
$animals[] = array_map('nl2br', $row);
}
echo json_encode($animals);
如果 Angular 正在将 HTML 转换为实体,那么您可能需要查看此处 Using HTML Entities within Angular strings
我可以从数据库中读取数据到我的 angular 应用程序,但我的文本中只给出了静态 \n
而不是新行。我知道我应该将所有 \n
事件转换为 <br />
但我没有这样做,即使使用 echo nl2br;
//extract from my php file
if($result = mysqli_query($con, $sql))
{
$animals = [];
$cr = 0;
while($row = mysqli_fetch_assoc($result))
{
$animals[$cr]['animal'] = $row['animal'];
$animals[$cr]['t1'] = $row['title1'];
$animals[$cr]['p1'] = $row['paragraph1'];
$cr++;
}
echo nl2br($animals);
echo json_encode($animals);
下面是我的angular文件
//extract from my animals.component.html file
<div class="container" *ngFor="let animal of this.animals">
{{animal.t1}}
{{animal.p1}}
{{animal.t2}}
</div>
但是,我在网页上的输出(来自 animal.t1
)与数据库条目的文本相同:
Animals \n are \n fun \n .
我尝试了很多不同的方法,但似乎无法将 \n
转换为 <br>
。有人对此有任何建议吗?
使用nl2br
:
$animals[$cr]['t1'] = nl2br($row['title1']);
nl2br
采用字符串而不是数组。如果你 select 查询中的列就容易多了。只需映射行数组:
// SELECT animal, t1, p1 FROM table WHERE .....
while($row = mysqli_fetch_assoc($result))
{
$animals[] = array_map('nl2br', $row);
}
echo json_encode($animals);
如果 Angular 正在将 HTML 转换为实体,那么您可能需要查看此处 Using HTML Entities within Angular strings