分かりやすく、使いやすく。

変数の内容をテキストファイルに出力する方法

スポンサーリンク

PHP で変数の内容をテキストファイルに書き出すにはいくつかの方法があります。

  1. print_r を使用する方法
  2. var_export を使用する方法
  3. var_dump を使用する方法


print_r を使用する方法

print_r は第二引数に true を指定すると、実行結果を文字列として返します。その文字列をテキストファイルに出力することで、変数の内容をファイルに保存することができます。サンプルコードは次の通りです。

php(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
12
13
$my_array = array(
    'blue' => '青',
    'red' => '赤',
    'green' => '緑'
);
 
//第二引数を true にすると結果を文字列で返す。
$str = print_r($my_array, true);
 
//PHP スクリプトと同一ディレクトリに log.txt として出力
$fp = fopen(__DIR__ . "/log.txt", "a+");
fputs($fp, $str);
fclose($fp); 

上記を実行するとスクリプトと同じディレクトリに次のファイルが生成されます。

log.txt
1
2
3
4
5
6
Array
(
    [blue] => 青
    [red] => 赤
    [green] => 緑
) 

var_export を使用する方法

var_export は第二引数に true を指定すると、実行結果を文字列として返します。その文字列をテキストファイルに出力することで、変数の内容をファイルに保存することができます。サンプルコードは次の通りです。

php(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
12
13
$my_array = array(
    'blue' => '青',
    'red' => '赤',
    'green' => '緑'
);
 
//第二引数を true にすると結果を文字列で返す。
$str = var_export($my_array, true);
 
//PHP スクリプトと同一ディレクトリに log.txt として出力
$fp = fopen(__DIR__ . "/log.txt", "a+");
fputs($fp, $str);
fclose($fp); 

上記を実行するとスクリプトと同じディレクトリに次のファイルが生成されます。

log.txt
1
2
3
4
5
array (
  'blue' => '青',
  'red' => '赤',
  'green' => '緑',
) 

var_dump を使用する方法

var_dump は実行結果を文字列で返すオプションは無い為、 ob_start を使用します。サンプルコードは次の通りです。

php(実行可能なサンプルコード)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$my_array = array(
    'blue' => '青',
    'red' => '赤',
    'green' => '緑'
);
 
//ob_end_clean を実行するまで標準出力の内容はバッファに保存される。
ob_start();
var_dump($my_array);
$str = ob_get_contents();//バッファの内容を取得
ob_end_clean();
 
//PHP スクリプトと同一ディレクトリに log.txt として出力
$fp = fopen(__DIR__ . "/log.txt", "a+");
fputs($fp, $str);
fclose($fp);  

上記を実行するとスクリプトと同じディレクトリに次のファイルが生成されます。

log.txt
1
2
3
4
5
6
7
8
array(3) {
  ["blue"]=>
  string(3) "青"
  ["red"]=>
  string(3) "赤"
  ["green"]=>
  string(3) "緑"
}  
スポンサーリンク
スポンサーリンク