使用php在网络上读取txt文件

问题描述

我需要使用PHP读取并解析网络上的txt文件

“警告:file_get_contents(文件//10.0.2.129/lims/lims.txt):未能 开放式流:中没有这样的文件或目录 C:\ AppServ \ www \ mail \ index.PHP在第二行“

这样我会收到错误消息。

<?PHP
$txt_file = file_get_contents('file//10.0.2.129/lims/lims.txt');

function sp($x) {
    return preg_split("/\s\s+|\s*\((\d{4}).*\)/",$x,PREG_SPLIT_DELIM_CAPTURE);
}

$array = preg_split("/\n/",$txt_file);
$processed = array_map('sp',$array);

print_r(json_encode($processed));
?>

解决方法

尝试一下

\\\\10.0.2.129\\lims\\lims.txt
,

file_get_contents可用于本地文件或通过协议(在此处列出:https://www.php.net/manual/wrappers.php

在您的示例中,您错过了“文件”和“ //”之间的“:”。而且,基于IP外观,您的文件位于共享磁盘上,因此必须在前面添加网络前缀\\

因此它应该是file_get_contents('file://\\\\10.0.2.129/lims/lims.txt')。 由于“ file://”是默认协议,因此您可以仅保留file_get_contents('\\\\10.0.2.129/lims/lims.txt')

来删除它 ,

尝试使用file_get_contents('./ lims / lims.txt'); 但是请确保根据调用此函数的位置选择正确的路径。