<?php
$hoge = [
'aaa' => 'hoge',
'bbb' => 'foo',
'ccc' => 'bar',
];
var_dump($hoge);
var_export($hoge);
/////var_dump/////
array(3) {
["aaa"]=>
string(4) "hoge"
["bbb"]=>
string(3) "foo"
["ccc"]=>
string(3) "bar"
}
/////var_export/////
array (
'aaa' => 'hoge',
'bbb' => 'foo',
'ccc' => 'bar',
)
基本的には標準出力する分には同じです。
出力される構造としては上記のような違いになります。
var_export関数は var_dump() に似ていますが、 返される表現が有効な PHP コードであるところが異なります。
公式の言い方をするとvar_exportは、このような「有効なPHPコード」という形式になります。
ちなみに有効なPHPコードとは?という疑問もあると思います。
var_exportの第二引数にtrueを指定すると変数を出力せずに変数の値を返します。
なので、使用用途としてはログ出力時などに変数情報を文字列として出力するには
var_export()が適しています。
ex)
\Log::debug(var_export($hoge, true));
var_dumpは配列の要素数や型も表示されるので用途別で使い分けましょう。