1. 程式人生 > >利用fopen,fwrite,fclose,fgetcsv簡單的留言本釋出和讀取功能

利用fopen,fwrite,fclose,fgetcsv簡單的留言本釋出和讀取功能

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>留言本</title>
</head>
<body>
<form action="index.php" method="get">
    <div>標題:<input type="text" name="title"></div>
    <div>內容:<input type="text" name="content"></div>
    <input type="submit" value="提交">
</form>
</body>
</html>

index.php(寫入留言本)

$arr=$_GET['title'].','.$_GET['content'];
$fh = fopen('./index.txt', 'a');
var_dump($fh);
fwrite($fh, $arr);
fclose($fh);

fopen如果開啟失敗,本函式 返回FALSE。開啟成功,返回資源型別,例如:resource(3) of type (stream);

readmsg.php(展示全部留言)

//讀取指定的第幾條
header("content-type:text/html;charset=utf-8");
$i=1;
$fh = fopen('./index.txt', 'r');
while ($re=fgetcsv($fh)){
    echo '<a href="msg.php?tid=',$i,'">',$re[0],'</a>','<br>';
    $i++;
}

效果如下: 例項 readmsg.php(展示指定留言)

header("content-type:text/html;charset=utf-8");
$tid = $_GET['tid'];
$i = 1;
$fh = fopen('./index.txt', 'r');
while ($re = fgetcsv($fh)) {
    if ($i == $tid) {
        echo '標題:', $re[0], '<br>', '內容:', $re[1], '<br>';
    }
    $i++;
}

效果如下: 例項

fgetcsv與 fgets() 類似,不同的是 fgetcsv() 解析讀入的行並找出 CSV 格式的欄位,然後返回一個包含這些欄位的陣列

,出錯時返回 FALSE,包括碰到檔案結束時。fgets返回字串。 fgetcsv從檔案指標中讀入一行並解析 CSV 欄位