您的位置:首页 > 运维架构 > Shell

在shell脚本中包含php

2013-12-08 23:43 295 查看
有时候我们可能需要在其他语言编写的Shell脚本中包含PHP编写的Shell脚本。其实非常简单,下面是一个简单的例子: 

  #!/bin/bash 

  echo This is the Bash section of the code. 

  /usr/local/bin/php -q << EOF 

  <?php 

  print("This is the PHP section of the code\n"); 

  ?> 

  EOF

  其实就是调用PHP来解析下面的代码,然后输出;那么,再试试下面的代码: 

  #!/bin/bash 

  echo This is the Bash section of the code. 

  /usr/local/bin/php -q << EOF 

  <?php

  $myVar = 'PHP'; 

  print("This is the $myVar section of the code\n"); 

  ?> 

  EOF

  可以看出两次的代码唯一的不同就是第二次使用了一个变量“$myVar”,试试运行,PHP竟然给出出错的信息:“Parse error: parse error in - on line 2”!这是因为Bash中的变量也是“$myVar”,而Bash解析器先将变量给替换掉了,要想解决这个问题,你需要在每个PHP的变量前面加上“\”转义符,那么刚才的代码修改如下: 

  #!/bin/bash 

  echo This is the Bash section of the code. 

  /usr/local/bin/php -q << EOF 

  <?php 

  \$myVar = 'PHP'; 

  print("This is the \$myVar section of the code\n"); 

  ?>

  EOF
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: