phpで色々な種類のファイルを配列にした
phpでファイル操作を行うことが多かったので
ファイルによっての配列作成の違いをまとめました。
ファイルの作成
適当にファイルを作ります。
テスト用として .txt .csv .json の3つのファイルを作ります。
{"0":"[email protected]","1":"[email protected]","2":"[email protected]"}
配列の作成
<?php
#test.txt 読み込み
$str = file_get_contents('./test.txt');
$arr = explode("\n", $str, -1);
var_dump($arr);
#test.csv 読み込み
$str = file_get_contents('./test.csv');
$arr = explode(",", $str, -1);
var_dump($arr);
#test.json 読み込み
$str = file_get_contents('./test.json');
$arr = json_decode($str, true);
var_dump($arr);
出力結果
array(3) {
[0]=>
string(11) "[email protected]"
[1]=>
string(11) "[email protected]"
[2]=>
string(11) "[email protected]"
}
array(3) {
[0]=>
string(11) "[email protected]"
[1]=>
string(11) "[email protected]"
[2]=>
string(11) "[email protected]"
}
array(3) {
[0]=>
string(11) "[email protected]"
[1]=>
string(11) "[email protected]"
[2]=>
string(11) "[email protected]"
}
まとめ
ファイルの形式によって配列の作り方は違う。
しかし、基本的には下記の関数を使えば配列は作れる。
file_get_contents : ファイルを読み込んで文字列として返す
explode : 文字列を区切り文字で分割して配列にする
json_decode : jsonファイル読み込んでデコードする
今回の場合ではexplodeの第3引数に-1を設定して
配列の最後に空文字の値が入らないようにしたり、json_decodeの第2引数をtrueにして
objectではなく配列を作成するようにしています。
公式リファレンスに引数の詳しいことが載っています。
http://php.net/manual/ja/function.file-get-contents.php
http://php.net/manual/ja/function.explode.php
http://php.net/manual/ja/function.json-decode.php
おまけ
.phpファイルを読み込む
<?php
$arr = [
'[email protected]',
'[email protected]',
'[email protected]'
];
#test.php 読み込み
require('./test.php');
var_dump($arr);
出力結果 :
array(3) {
[0]=>
string(11) "[email protected]"
[1]=>
string(11) "[email protected]"
[2]=>
string(11) "[email protected]"
}
Author And Source
この問題について(phpで色々な種類のファイルを配列にした), 我々は、より多くの情報をここで見つけました https://qiita.com/manato0119/items/5577a612f59c6d7f9d8b著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .