簡體   English   中英

什么是打印轉義字符串並在用戶端隱藏反斜杠的正確方法?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM