为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 PHP 命令(CLI)中传递 bash 脚本变量值

如何在 PHP 命令(CLI)中传递 bash 脚本变量值

PHP
繁星淼淼 2022-01-14 15:29:49
在传递 Linux bash-script 变量以执行 PHP CLI 命令时,我需要帮助。我正在研究执行 PHP CLI 命令的 bash 脚本,该命令从 bash 脚本(如文件夹路径)获取输入变量,以包含用于访问 PHP 文件类的文件。但是在执行 bash 脚本时发生的事情是传递给 PHP CLI 命令的变量充当 PHP 的变量。下面是我的脚本的示例代码file="$folderpath"somefile.phpmage_version=$(php -r 'include "$file";print_r(Mage::getVersionInfo());')下面是我得到的错误PHP Notice:  Undefined variable: file in Command line code on line 1PHP Warning:  include(): Filename cannot be empty in Command line code on line 1
查看完整描述

1 回答

?
鸿蒙传说

TA贡献1865条经验 获得超7个赞

Bash 需要双 ( ") 引号来解析变量,否则它们将保留$var,因此 php 会读取它们;


file="$folderpath"somefile.php

mage_version=$(php -r "include \"${file}\";print_r(Mage::getVersionInfo());")


如果您需要多行解决方案,您可以执行以下操作:在 Bash 中运行 PHP 函数(并将返回值保存在 bash 变量中)


php_cwd=`/usr/bin/php << 'EOF'

<?php echo getcwd(); ?>

EOF`

echo "$php_cwd" # Or do something else with it


查看完整回答
反对 回复 2022-01-14
  • 1 回答
  • 0 关注
  • 161 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信