我正在尝试读取文件的内容,而做这样的事情
$con="HDdeltin";
$fp = fopen($_SERVER['DOCUMENT_ROOT']. "/HDdeltin/Users/$con", "r");
echo $fp;
它不返回任何东西。我做错了什么?
快速解:
file_get_contents($_SERVER['DOCUMENT_ROOT'] . "/HDdeltin/Users/HDdeltin");
使用file_get_contents(),您可以使用realpath()来防止不良url。
$con = "HDdeltin";
$path = realpath($_SERVER['DOCUMENT_ROOT'] . "/HDdeltin/Users/$con");
echo file_get_contents($path);
要获得当前的根,你也可以使用:
- getcwd()函数
- 。
-
dirname(__FILE__)
,您可以在这里获得更多。
查看更多:
- 打开或file_get_contents更快?
你可以使用这个函数来读取
echo file_get_contents($_SERVER['DOCUMENT_ROOT']. "/HDdeltin/Users/$con");
您可能需要使用file_get_contents。http://php.net/manual/en/function.file-get-contents.php
下面是他们提供的例子:
// Read 14 characters starting from the 21st character
$section = file_get_contents('./people.txt', NULL, NULL, 20, 14);
var_dump($section);
所以你可能需要使用
$fp = file_get_contents($_SERVER['DOCUMENT_ROOT']. "/HDdeltin/Users/$con", true);
echo $fp;
PHP版本之间似乎存在一些差异
<?php
// <= PHP 5
$file = file_get_contents('./people.txt', true);
// > PHP 5
$file = file_get_contents('./people.txt', FILE_USE_INCLUDE_PATH);
?>
所以一定要查看提供的第一个链接
fopen
返回一个资源,而不是文本
用file_get_contents($_SERVER['DOCUMENT_ROOT']. "/HDdeltin/Users/$con")
代替