yiissy001 2016-04-07 11:12:59 2951次浏览 0条评论 0 0 0

有时候, 有一些简单的验证性代码你没把握但又觉得不值得专门写文件开浏览器跑测试的话可以试试打开命令行/终端使用php -r <code>命令来验证

但有一点在linux和windows上有点不同, Windows上的验证代码需要用双引号包起来如: php -r "echo 1;", 而linux用的则是单引号 php -r 'echo 1;', 这一点相信很多人都知道, 但有一点要注意的是如果验证代码中包含双引号时两个操作系统又不一样了.

linux中提倡用单引号来包裹代码,用双引号来包裹字符串如: php -r 'echo "aaa\n";, 但经我测试使用双引号来包裹代码也没发现问题php -r "echo \"a'aa\n\";"

windows中这个问题就有点复杂,因为windows有两种命令行,一种是cmd一种是powershell, 貌似两种终端的写法还不一样.

  • CMD中, 必须用双引号包裹代码,代码中的双引号用反斜杠转义:php -r "echo \"aaa\";", 单引号包裹的代码会报错
  • powershell中, 虽然php -r 'echo "aaa";'能显示,但PHP会报notice, 如果字符串里加入\n这样的转义符号则会直接报Fatal error, 正确的写法应该是 php -r 'echo \"aaa\";'. 即:用单引号包裹代码,用反斜杠转义代码中的双引号

测试环境:

  • linux: Linux Mint 17.3 Rosa PHP: PHP 5.5.9-1ubuntu4.14
  • windows: window10 专业版 PHP:PHP 5.6.10
    没有找到数据。
您需要登录后才可以评论。登录 | 立即注册