shell_exec中的变量

时间:2013-03-08 21:00:55

标签: php variables shell-exec

我是脚本中的总菜鸟,并试图找出我的代码中的问题所在。我有一个带有客户详细信息的文本文件,该文件的第一行是用户名,第二行是真实姓名。这个细节我需要传递给php。首先,我需要在目录中找到最旧的文件。我创建了返回客户用户名的bash脚本:

oldest=`ls -tr1 temp/data/*.details|head -1`
head -n1 $oldest

找到最旧的文件(temp / data / xxx.details)并返回用户名,假设是xxx。

现在,到php:

$username = shell_exec('./oldest_order.sh');
$name = shell_exec('head -2 temp/data/'.$username.'.details | sed -n 2p');

我可以在我的php中获取用户名,第一行:它是xxx,但第二行不起作用,但是,如果我更改'。$ username。'到xxx,它有效,所以问题就在这个变量周围。

请建议。

1 个答案:

答案 0 :(得分:0)

也许在结尾或开头都有一个新行或空格。

您可以通过执行var_dump($username);来检查。这将为您提供字符串的实际长度,以便您可以将其与您认为应该具有的长度进行比较。

如果在开头或结尾是空格,您可以使用:

$name = shell_exec('head -2 temp/data/'.trim($username).'.details | sed -n 2p');