2011-08-31 54 views
1
{$row['info']} 

如何在此上使用stripslashes()php函數?在數據庫行上使用反斜槓php

我已經試過: stripslashes({$row['info']}),不工作這:{stripslashes($row['info'])}

既不工作。

我必須先使用$ var嗎?

感謝

+0

你想做什麼?這不是'stripslashes'的意思。 – meagar

+0

@meagar:如果他的'$ row ['info'] =「這是foo的地方!」;'then'echo stripslashes($ row ['info']);'正是他應該的東西這樣做。 –

+0

@Kalle這是真的,但無關緊要。我的觀點是,他的數據不應該處於這種狀態。 *迴應*某事時,他不可能使用stripslashes。如果他在展示他們之前不得不對他的數據進行正確的管理,它們應該在進入/離開數據庫時自動轉義/非轉義。 – meagar

回答

1

stripslashes返回修改後的字符串,留下它的參數不變。你必須將結果分配給一個變量:

$var = stripslashes($row['info']); 

這就是說,你爲什麼要這樣做?你幾乎肯定不應該。沒有理由去除數據庫中的數據的斜槓,除非在插入數據時雙斜槓。

+0

呵呵,你在我輸入的時候回答;) – jancha

0
$var = stripslashes($row['info']); 

更正確。或者在字符串中,像這樣使用它

echo "something".stripslashes($row['info'])." some more thingy"; 
1

你的問題有點混亂。

stripslashes()需要參數並將反斜槓符號轉換爲正常符號。更多的是,它不影響參數。它返回剝離版本。

so $result = stripslashes($source)$row["info"]你的情況。

0

看起來好像你正在使用heredoc syntax是因爲你的{}。問題是,爲什麼?你是否認真地顯示你的結果是這樣?:

echo <<<my_results 
Info: {$row['info']} 
my_results; 

好,因爲這是冷靜的方式這樣做,那麼這裏就是你的解決辦法:

$row_info = stripslashes($row['info']); 
echo <<<my_results 
Info: {$row_info} 
my_results; 

不過,我不推薦這種做法。而是像這樣做:

echo 'Info:' . stripslashes($row['info']); 

因爲{stripslashes($row['info'])}不確實工作,stripslashes({$row['info']})是奇聞!