1. 创建一个名为test的目录,在目录中创建一个a.txt的文件并且项文件中写入"Hello World!",用两种方法。
方法1:
~~~
$rootDir = '.';
$newDir = $rootDir.'/ztest';
$filePath = $newDir.'/a.txt';
$makeDirResult = mkdir($newDir);
if($makeDirResult){
$fileHandler = @fopen($filePath,'wb+');
fwrite($fileHandler,'Hello World!');
fclose($fileHandler);
}else{
echo '目录创建失败';
}
~~~
方法2:
~~~
$rootDir = '.';
$newDir = $rootDir.'/ztest';
$filePath = $newDir.'/a.txt';
$makeDirResult = mkdir($newDir);
if($makeDirResult){
file_put_contents($filePath,'Hello World',FILE_APPEND);
}
~~~
2. 返回文件从X行到Y行的内容
方法1:
~~~
function getContentFromFile($file,$startLine,$endLine){
$content = '';
if(file_exists($file)){
$fileHandler = @fopen($file,'rb');
$i = 1;
while (!feof($fileHandler)){
if($i>=$startLine && $i<=$endLine){
$content .= fgets($fileHandler);
}else{
fgets($fileHandler);
}
$i++;
}
fclose($fileHandler);
}
return $content;
}
~~~
方法2:
~~~
function getContentFromFile($file,$startLine,$endLine){
$content = '';
$fileObject = new SplFileObject($file);
$fileObject->seek($startLine-1);
$count = $endLine - $startLine;
for($i = 0;$i<=$count;$i++){
$content .= $fileObject->current();
$fileObject->next();
}
return $content;
}
~~~