[英]What is the right way to print escaped strings, and to hide backslashes on users end?
我正在使用Laravel 4建立一個網站。在打印數據庫中的數據或用戶可以操縱的數據時,我使用的是三重“ {”,但是我在這里遇到了難題。 當使用特殊字符時,它們以“ \\”轉義,但是我不希望“ \\”出現在網站上。
所以我的問題是如何正確打印這些字符串? 我知道我可以使用反斜杠刪除“ \\”,但這安全嗎? 將斜線添加到此處是有原因的,因此僅將其刪除就不會有問題嗎? 有沒有更好/更安全的方法來實現這一目標?
注意:我並不是只要求Laravel方法,我也願意接受純PHP的建議。
謝謝。
我畢竟找到了原因。 在該網站的公共文件夾中,我們還安裝了wordpress,用作網站博客部分的CMS。 看來WordPress正在更改$ _POST / $ _ GET變量。
解決方案是在public / index.php中初始化wordpress之前,在臨時數組中捕獲$ _GET,$ _ POST和$ _REQUEST變量,並在wordpress初始化后從該數組中重新分配它們的值。
$tmp = array($_GET, $_POST, $_REQUEST);
-
/**
* Include wordpress
*/
define('WP_USE_THEMES', false);
require __DIR__.'/wordpress/wp-blog-header.php';
-
list($_GET, $_POST, $_REQUEST) = $tmp;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.