PHP ??? ?? ?? ? ??
?? ??? ?? ??
?? ?? ???? ??? ??? ????. ?? ????? ?? ??? ?????.
??? ???????.
平臺 | 分割符 |
---|---|
windows | |
類unix | / |
Windows? ?? ??? d:xxxxxx???. ??: Windows? d:/xxx/xxx? ?????.
Linux? ?? ??? /home/xxx/xxx???. ??: Linux?? homexxxxxx? ??? ??
??? ????? ?? ????? ????? ??? ?? ???? d:xxxxxx? ??????. ??? ? 2?? ??? ??? ??? ? /? ??? ??? ???? Linux? Windows?? ??? ??? ??? ??? ? ????.
??? ?????:
DIRECTORY_SEPARATOR
?? ??? ??? ???? ??? ?? ??? ?????.
FILE? PHP? ?? ??? ????? ??? ??? ????. ??? ?? FILE? ?? ??? ?? ??? ? ????.
??? FILE? ???? ???. ??? ?? ??? ???? ??? ?? FILE? ??? ? ????.
<?php $_current_file = str_replace(array('/', '\'), DIRECTORY_SEPARATOR, __FILE__); define('__CUR_FILE__', $_current_file); echo __CUR_FILE__; ?>
?? ??? ?? ??
rewind(??? ??)
??: ???? ???? ?????
fseek(??? ??) , int offset [, int from_where])
??: ?? ???? ??? ???? ?? ?????
?? ???? fread? ??? ??? ???? ???? ?? ?????. ??? ??? ??? ????. ??? ?? ??? ?? ???? ?? ????.
? ??? ?? ??? ? ? ????.
1. ??? ?? ?? ??? ???? ?????
2. ??? ???? A?? C?? ?????
3. ??? ??? ?? C? ?? ????? ?? ??? ? ????.
demo.txt ??? ?? ??? ?????:
abcdeefghijklk
opqrst
uvwxyz
12345678
? ? ??? ??? ?????.
<?php $fp = fopen('demo2.txt', 'r+'); //讀取10個字符 echo fread($fp,10); //指針設置回到開始處 rewind($fp); //再讀取10次看看輸出的是什么 echo '<br>'; echo fread($fp,10); echo '<br>'; //文件指針向后移動10個字符 echo fseek($fp,10); echo '<br>'; //再看看文件中輸出的是什么 echo fread($fp,10); echo '<br>'; fclose($fp); ?>
?? ??? fseek? ??? ???? ???? ???? ?? ? ? ????. ??? ???? ?? ??? ?? ???? ?????.
??? ???? ???? ??? ?? ? ? ????. fseek ?? ?? ?? ?????.
?? ?? ?? ???? ?? ???? ?????.
filesize? ?? ??? ?????
<?php $filename = 'demo.txt'; echo $filename . '文件大小為: ' . filesize($filename) . ' bytes'; ?>
?? ??? ?? ?? ??
?? ?? ??? ???? ?? ??, ?? ?? ??
函數(shù)名 | 功能 |
---|---|
file | 把整個文件讀入一個數(shù)組中 |
fgets | 從文件指針中讀取一行,讀到最后返回false |
fgetc | 從文件指針中讀取一個字符,讀到最后返回false |
ftruncate | 將文件截斷到給定的長度 |
?? ?? ??? ???? ?? ??? ?????.
demo.txt ??? ?? ??? ?????:
abcdeefghijklk
opqrst
uvwxyz
12345678
<?php //以增加的r模式打開 $fp = fopen('demo.txt','r+'); //你分發(fā)現(xiàn)每次只讀一個字符 echo fgetc($fp); //我要全部讀取可以,讀取一次將結(jié)果賦值一次給$string while($string = fgetc($fp)){ echo $string; } ?>
fgets? ? ?? ? ?? ???:
<?php //以增加的r模式打開 $fp = fopen('demo.txt','r+'); //你分發(fā)現(xiàn)每次只讀一個字符 echo fgets($fp); echo fgets($fp); echo fgets($fp); echo fgets($fp); ?>
? ??? ???? ?? ??? ? ?? ? ?? ??? ?? ? ? ????. ?? ?? ??? ?????.
???? ?? ???? ??? ???????.
<?php //打開我們上面的demo.txt文件 $file = fopen("demo.txt", "a+"); //你可以數(shù)數(shù)20個字有多長,看看是不是達到效果了 echo ftruncate($file,20); fclose($file); ?>
?? ???? ????? ?? ???? ??? ? ??? ??????.
??? ?? ??
函數(shù) | 功能說明 |
---|---|
filectime | 文件創(chuàng)建時間 |
filemtime | 文件修改時間 |
fileatime | 文件上次訪問時間 |
<?php $filename = 'demo.txt'; if (file_exists($filename)) { echo '$filename文件的上次訪問時間是:' . date("Y-m-d H:i:s", fileatime($filename)); echo '$filename文件的創(chuàng)建時間是: ' . date("Y-m-d H:i:s", filectime($filename)); echo '$filename文件的修改時間是: ' . date("Y-m-d H:i:s", filemtime($filename));} ?>