我有一个 php 代码,它将 ssh 到远程机器并执行一个 shell 脚本来获取文件夹列表。远程机器在 shell 脚本的指定路径中包含 300 多个文件夹。shell 脚本执行良好并返回所有文件夹的列表。但是当我在 php 中检索此输出时,我只得到大约 150、200 个文件夹.
这是我的php代码,
<?php
if (!function_exists("ssh2_connect")) die("function ssh2_connect doesn't exist");
if(!($con = ssh2_connect("ip.add.re.ss", "port")))
{
echo "fail: unable to establish connection";
}
else
{
if(!ssh2_auth_password($con, "username", "password"))
{
echo "fail: unable to authenticate";
}
else
{
$stream = ssh2_exec($con, "/usr/local/listdomain/listproject.sh");
stream_set_blocking($stream, true);
$item = fread($stream,4096);
$items = explode(" ", $item);
print_r($items);
}
}
?>
这是我的 shell 脚本。
#!/bin/bash
var=$(ls /home);
echo $var;
这里的php有什么问题。像这里一样动态获取数据时,php 中的数组大小是否有任何限制。请告知,因为我是 PHP 的初学者。
谢谢。