我正在尝试从用户获取文件路径,然后尝试解析它。但是,当我运行代码时,我收到错误。
如果我通过输入我的代码手动传递文件路径然后运行程序它工作正常。
<?php
require_once('SoftLayer/SoapClient.class.php');
$handle4 = fopen ("php://stdin","r");
echo "Enter full file path of the csv file e.g C:\\git\\softlayer-api-php-client\\sample.csv : ";
$path = fgets($handle4);
echo $path;
$f_pointer=fopen(trim($path),"r"); // file pointer
echo 'Done';
?>
错误:
Line 10 $f_pointer=fopen($path,"r");
答案 0 :(得分:1)
将屏幕截图中的错误转换为文字:
Warning: fopen(C:\\git\\softlayer-api-php-client\\sample.csv"
)
这不是输出的自动换行,因为显示的行数较长,因此必须是实际的换行符。那里还有一个流浪的双引号。
换句话说,您需要a)验证您的输入(以便您在测试时发现您输入的迷路"
),以及b)在使用之前运行trim()
,摆脱因其进入而产生的几乎不可避免的空间和新线。