我有一些从数据库中得到的文本,如下所示:
$solution = $row['solution'];
Run Code Online (Sandbox Code Playgroud)
然后我使用这个变量在PHP中创建了一些HTML:
echo '<a class="delete_suggested_solution" data-problem_id="'.$problem_id.'" data-suggested_solution_id="'.$suggested_solution_id.'" href="#">Delete</a> | <a href="#" class="edit_suggested_solution" data-problem_id="'.$problem_id.'" data-suggested_solution_id="'.$suggested_solution_id.'" data-solution_text="'.$solution.'" data-solution_title="'.$solution_name.'">Edit</a>';
Run Code Online (Sandbox Code Playgroud)
在大多数情况下,这实际上工作正常,但是当$解决方案中有这样的链接时,<a href="http://SomeUrlWhatever.com">something</a>这个HTML会在显示时打破页面上的HTML.
有没有什么可以做的,以便页面上的HTML不会被破坏?
谢谢!!
假设您想要的部分是something而不是链接,只需使用strip_tags()和htmlentities()仅检索标记的内部文本内容,并编码要在HTML属性中使用的引号.
$solution = htmlentities(strip_tags($row['solution']), ENT_QUOTES);
Run Code Online (Sandbox Code Playgroud)