データベースに NULL 値があり、それらを配列に取り込むと、空の文字列が得られます。例えば:
$test = [];
while ($row = $sth->fetch(PDO::FETCH_ASSOC)) {
$test[$row['id']]['field1'] = $row['field1'];
$test[$row['id']]['field2'] = $row['field2']; // null in database
$test[$row['id']]['field3'] = null; // explicitly set to null
}
return $test;
出力:
array(1) {
[1]=>
array(3) {
["field1"]=>
string(4) "test"
["field2"]=>
string(0) ""
["field3"]=>
string(0) ""
}
}
NULL 値ではなく空の文字列になってしまう理由を理解しようとしていますか? 私は何か間違ったことをしていますか、それともこれが機能するはずの方法ですか?