当我开始用PHP和MySQL编写我的网站时,我编写的第一个PHP脚本之一是初始化我的数据库的脚本.删除/创建数据库.删除/创建每个表.然后从脚本中的文字加载表.
这一切都很好!Whoohoo :-)
但我更喜欢从文件中读取数据,而不是在PHP脚本中对它们进行硬编码.
我有几本关于PHP的书籍,但它们都是面向使用MySQL进行Web开发的.我找不到任何关于读写普通文件的内容.
是的,我知道这里有关于读取TXT文件的stackoverflow的大量问题,但是当我看每一个时,它们都是C或C#或VB或Perl.我开始认为PHP只是无法读取文件:-(
我需要的只是一个简短的PHP示例,说明如何在服务器上打开TXT文件,按顺序读取它,在屏幕上显示数据,以及关闭文件,如下面的伪代码:
program readfile;
handle = open('myfile.txt');
data = read (handle);
while (not eof (handle)) begin
display data;
data = read (handle);
end;
close (handle);
end;
Run Code Online (Sandbox Code Playgroud)
当我到达我的网站上人们上传头像的部分时,我还需要在服务器上写文件,并将它们保存为JPG或GIF文件.但这是为了以后.
谢谢!
JKi*_*rtz 23
<?php
// get contents of a file into a string
$filename = "/usr/local/something.txt";
$handle = fopen($filename, "r");
$contents = fread($handle, filesize($filename));
fclose($handle);
?>
Run Code Online (Sandbox Code Playgroud)
根据评论编辑,您可以逐行读取文件fgets()
<?php
$handle = @fopen("/tmp/inputfile.txt", "r");
if ($handle) {
while (($buffer = fgets($handle, 4096)) !== false) {
echo $buffer;
}
if (!feof($handle)) {
echo "Error: unexpected fgets() fail\n";
}
fclose($handle);
}
?>
Run Code Online (Sandbox Code Playgroud)
我需要的只是一个简短的PHP示例,说明如何在服务器上打开TXT文件,按顺序读取它,在屏幕上显示数据,以及关闭文件,如下面的伪代码:
echo file_get_contents('/path/to/file.txt');
Run Code Online (Sandbox Code Playgroud)
是的,请注意file_get_contents,您通常不需要循环:
$file = new SPLFileObject('/path/to/file.txt');
foreach($file as $line) {
echo $line;
}
Run Code Online (Sandbox Code Playgroud)
好吧,既然您询问有关该主题的资源,那么PHP.net 文档中有一整本书。
一个基本的例子:
<?php
// get contents of a file into a string
$filename = "/usr/local/something.txt";
$handle = fopen($filename, "r");
$contents = fread($handle, filesize($filename));
fclose($handle);
?>
Run Code Online (Sandbox Code Playgroud)