2010-08-01 26 views
7

我正在做一些與PDO對象選擇,但fetch結果後,我得到字符串與逃脫'\',我該如何禁用?PHP - PDO返回轉義斜槓,如何刪除它?

+0

只是不添加它 – 2010-08-01 14:34:05

+0

'magic_quotes'其中來自PHP 5.4起禁用。幸運的是,這不再是一個問題。 – jbx 2013-07-13 02:38:12

回答

8

看起來你可能在Magic Quotes有一些麻煩。您可以按照the instructions here來禁用它們。強烈建議您禁用它們,而不是通過使用函數將斜線去掉來避開它們。

2

看起來像你有magic quotes打開。

實際上你應該關閉來自的魔法引號php.ini

或者從腳本中,你可以處理它是這樣的:

if (get_magic_quotes_gpc()) 
{ 
    $str = stripslashes($str); 
} 

現在可以正常使用$str變量。

+0

在剝離斜線之前最好檢查magic_quotes是否實際啓用,否則您將刪除原本應保留的斜線。 – tdammers 2010-08-01 14:22:28

+0

@tdammers:在此評論之前,我更新了答案,謝謝:) – Sarfraz 2010-08-01 14:23:59

1

我一直在共享主機,我沒有訪問php.ini - ini_set()也不會工作。這段代碼工作就像一個魅力: [source]

// since PHP 5 
if (get_magic_quotes_gpc()) { 
    function stripslashes_gpc(&$value) 
    { 
     $value = stripslashes($value); 
    } 
    array_walk_recursive($_GET, 'stripslashes_gpc'); 
    array_walk_recursive($_POST, 'stripslashes_gpc'); 
    array_walk_recursive($_COOKIE, 'stripslashes_gpc'); 
    array_walk_recursive($_REQUEST, 'stripslashes_gpc'); 
}