1
1

PHP ファイル操作の基本(ファイル名型) 振り返り

Posted at

テキストファイルの読み込み

ファイル名型 (ファイルを丸ごと操作する方法)

  • PHPの標準関数 file_get_contents関数を使用してみる

参考: file_get_contents

.contact.datファイルを作成及び編集 txtでもよい

contact.dat
あああ
いいい
ううう

test.phpを作成及び編集

test.php
<?php

$contactFile = '.contact.dat';

// ファイル名型 (file_get_contents)
$fileContents = file_get_contents($contactFile);

echo $fileContents;

test.phpにアクセスすると .contact.datの内容がブラウザに表示される。

ファイルへの書き込み

ファイル名型: テキストファイルに書き込みをする(上書きの場合)

  • PHPの標準関数 file_put_contents関数を使用してみる

参考: file_put_contents

test.phpを編集

test.php
<?php

$contactFile = '.contact.dat';

// ファイルに書き込む(上書き)
file_put_contents($contactFile, '上書きされました');

test.phpにアクセスすると file_put_contents関数が実行され、.contact.datファイルの中身を確認すると以下のように上書きされている。

contact.dat
上書きされました

ファイル名型: テキストファイルに書き込みをする(追記の場合)

PHPの標準関数 同じくfile_put_contents関数を使用するが、
第三引数に FILE_APPENDというオプションを付ける。

.contact.datを編集

.contact.dat
ABC
DEF
GHI
test.php
<?php

$contactFile = '.contact.dat';

file_put_contents($contactFile, 'JKL', FILE_APPEND);

.contact.datファイルを確認すると以下のように書き込まれる

.contact.dat
ABC
DEF
GHIJKL
  • 改行したい場合

.contact.datファイルを編集

.contact.dat
ABC
DEF
GHI

test.php
<?php

$contactFile = '.contact.dat';

$addText = 'JKL' . "\n"; // "\n" は改行

// ファイルに書き込み(追記)
file_put_contents($contactFile, $addText, FILE_APPEND);

test.phpにアクセスすると.contact.datファイルの中身は以下のようになる

.contact.dat
ABC
DEF
GHI
JKL

CSVファイルから読み込む

  • 配列で取得するために file関数を使用
  • コンマごとに区切る explode関数を使用
  • 配列の表示には foreach関数を使用

contact.csvファイルを作成及び編集

contact.csv
タイトル1,本文1,日付1,カテゴリ1
タイトル2,本文2,日付2,カテゴリ2
タイトル3,本文3,日付3,カテゴリ3

test.phpを編集

test.php
<?php

$contactFile = '.contact.csv';

// 配列: file関数 コンマごとに区切る: explode関数, 配列の表示: foreach関数
$allData = file($contactFile);

foreach ($allData as $lineData) {
    $lines = explode(',', $lineData);
    // echo '<pre>';
    // echo var_dump($lines);
    // echo '</pre>';
    echo $lines[0] . '<br>';
    echo $lines[1] . '<br>';
    echo $lines[2] . '<br>';
}

test.phpにアクセスするとブラウザにcsvファイルの中身が表示される。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1