2012-04-27 75 views
2

我有一個關於雙重POST方法的問題。我必須得到與輸入完全相同的輸出。在Linux,php v4和魔術引號上運行。PHP雙POST,1斜線到4斜槓和回

  1. 輸入:你好\(單斜線)
  2. 首先POST:你好\(雙反斜槓)
  3. 第二柱:你好\\(四倍反斜槓)
  4. 預期:你好\(與輸入相同)(單斜線)
  5. 實際結果:你好\(txt文件)(雙斜線)

第一柱的方法是通過形式發佈,第二發佈者CURL本身完成。最後是否可以獲得hello \的結果而不使用stripslashes?

評論:當保存到文本文件中時,消息「hello \\」被轉換爲「hello \」。這是怎麼發生的,爲什麼,我如何操作結果來顯示我的預期結果呢? 由於一些奇怪的原因斜槓沒有出現,補充說明。 此致敬禮。 P.S如果這是我的編碼問題,請給我一點時間來張貼它。

+2

標題聽起來像一部恐怖電影! – 2012-04-27 08:40:31

+0

爲什麼不使用php5? – 2012-04-27 08:51:24

+4

立即升級您的PHP安裝! PHP 4已經過時了很多年。它沒有維護和充滿安全漏洞。另外,關閉magic_quotes_gpc。 – GordonM 2012-04-27 09:06:10

回答

0

PHP addslashes()和stripslahes()可以用於你。使用它們,但是在這些步驟之間你需要它們。

http://php.net/addslashes

爲什麼你失去一個斜槓的原因是因爲反斜槓是一個轉義字符,告訴處理器從字面上採取下一個字符。因此,要打印反斜槓,您需要轉義反斜槓(雙反斜槓\變成=>單反斜槓)

乾杯! 丹