私は PDO で作業していましたが、PDO::FETCH_LAZY を理解できませんでした。PHP のマニュアルでは、「...PDO::FETCH_LAZY は、アクセス時にオブジェクト変数名を作成します...」と記載されています。これをテストするための次のコードがあります。
クラスb{
関数 __construct(){}
}
$b = 新しい b();
$pdo = new PDO('mysql:host=localhost;dbname=test', 'username', 'pssword');
//testtable{id int, title varchar, msg varchar, time varchar}
$res = $pdo->query("SELECT * FROM testtable limit 1");
$b = $res->fetch(PDO::FETCH_LAZY);
echo $b->msg;
var_dump($b);
これは、1 つのプロパティ msg のみを持つオブジェクト b を出力することになっています。しかし、代わりに、出力は次のようになります。
これはサンプル メッセージです。
object(PDORow)#6 (5) {
["クエリ文字列"]=>
string(31) "SELECT * FROM testtable limit 1"
["id"]=>
文字列(1) "1"
["タイトル"]=>
string(5) "サンプルタイトル"
["メッセージ"]=>
string(13) "これはサンプル メッセージです。"
[「時間」]=>
文字列(7) "1232123"
}
誰でもこれに光を当てることができますか?ありがとう。