1
我試圖在PHP中創建shell命令時遇到功能str_replace()
的問題。在外殼,當我製表完成有空格的行中,它出現這樣的:使用str_replace刪除exec的空間()
tar cvfz destination/filename.zip source/Name\ Of\ The\+\ Folder
所以對我來說,這個說,爲了通過exec()
運行此命令,我需要更換任何空格我在PHP中會有一個字符串。爲了解決這個問題,我使用
$q = str_replace(' ', '\ ' , $q);
我分析字符串的開始,以空間格式化爲「\」,而不是「」。我遇到的問題是,這個特定的文件夾,它也消除了加號,以及,它的格式是這樣的:
tar cvfz destination/Name\ Of\ The\ \ \ Folder.tgz source/Name\ Of\ The\ \ \ Folder
我如何設置此所以str_replace()
不排除加標誌?從我有限的測試,到目前爲止,它沒有消除任何出這些:-, %, @, !, (, *,), ^, =
這正是我需要的,謝謝。 – John 2012-08-12 21:25:13