多项选择题

某些时候需要在PHP脚本中使用第三方功能,来实现一些PHP不能完成的任务(比如调用压缩软件压缩某种PHP不支持其格式的文件)。在PHP脚本中执行系统命令时,以下哪些选项能确保没有命令注入?()

A.总是给要在exec()中执行的命令加`
B.总是使用shell_exec函数,它能够在执行前对命令进行安全检查
C.使用escapeshellcmd函数转义命令中的特殊字符
D.在执行命令前,先用ini_set()打开safe_mode
E.用escapeshellarg函数在执行前转义命令参数