PHP explode()
函数将所有内容放入第一个数组变量中。我按照以下示例进行了操作:explode
该文件包含以下字符串:
My CV_98KB_PDF(Adobe Reader)_YES - Use this form: Contact Form_/docs/CV.pdf
我希望它将从文件中读取的字符串拆分为单独的数组元素,但它只将它们拆分为第一个。
$doclist = "./docs/documentlist.txt";
$filestr = readfile($doclist);
$docProp = explode("_", $filestr);
echo $docProp[0];
echo $docProp[1];
$docProp[0]
包含完整字符串,而不是My CV
。为什么这样做?
亲切的问候。
答案 0 :(得分:2)
readfile()将文件输出到浏览器并返回字节数,因此您在页面上看到的内容是readfile()
的结果,而不是echo $docProp[0];
。您需要做的是使用file_get_contents()
:
$doclist = "./docs/documentlist.txt";
$filestr = file_get_contents($doclist);
$docProp = explode("_", $filestr);
echo $docProp[0];
echo $docProp[1];
答案 1 :(得分:0)
管理解决这个问题:
$doclist = "./docs/documentlist.txt";
$docfile = fopen($doclist, "r") or die("file error!");
while (!feof($docfile)) {
$docProp = explode('_', fgets($docfile));
};
fclose($docfile);
我没有使用readfile()
,而是使用fopen
,feof
和fgets
来阅读文件并将其展开。
亲切的问候。
答案 2 :(得分:0)
你的字符串由'/'组成,所以我们应该爆炸
$doclist = "./docs/documentlist.txt";
$filestr = readfile($doclist);
$docProp = explode("/", $filestr);
echo $docProp[0];
echo $docProp[1];