通过phpseclib exec函数执行的linux cat命令返回空结果

通过phpseclib exec函数执行的linux cat命令返回空结果,php,cat,phpseclib,Php,Cat,Phpseclib,我使用phpseclib的Net_SSH2类在远程服务器上执行许多命令。我需要从服务器检索某个XML文件的内容。问题是当我运行linux cat cmd时,如下所示: $ssh = new Net_SSH2($host, $port); if($ssh->connect($username, $password)){ $script = "cat '$xml_file'"; $output = $ssh->exec($script); }else{ exit('Log

我使用phpseclib的Net_SSH2类在远程服务器上执行许多命令。我需要从服务器检索某个XML文件的内容。问题是当我运行linux cat cmd时,如下所示:

$ssh = new Net_SSH2($host, $port);
if($ssh->connect($username, $password)){

  $script = "cat '$xml_file'"; 
  $output = $ssh->exec($script);
}else{
  exit('Login Failed');
}

$output是一个空数组。我通过putty在服务器上运行$script命令对其进行了双重检查,这里返回了xml文件的内容。这是phpseclib的一个实现问题,它阻止它返回正确的输出吗?

您确定
$ssh->exec()
返回的是输出而不是某种资源吗?至少是这样。是否进行了var_转储并返回:array(0){}连接是否已成功创建?尝试
如果(!$ssh->login($username,$password))退出('login Failed')尝试过,得到了相同的结果您确定xml文件的路径吗?尝试使用xml文件的绝对路径