$pdo = new PDO(
'mysql:host=db;dbname=myapp;charset=utf8mb4',
'dbuser',
'dbpass',
[
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
]
);
こちらでインスタンスを作っていることは分かるのですが、元となる PDO クラス (?) はどこにあるのでしょうか。
また、「 -> 」 はクラスで定義したプロパティやメソッドにアクセスする際に使うという認識をしていたのですが、
$stmt = $pdo->query("SELECT 5 + 3");
$result = $stmt->fetch();
この1行目に関しては、query メソッドを定義した PDO クラス (?) が無いのでなぜこのような書き方ができるのか混乱しています。
2 行目に関しては、$stmt はインスタンスではないのに、-> を使っている意味が分からないです。
これらのそれぞれの -> のあとにある query() と fetch() はどこからもってきたものになるのでしょうか。
また私のクラスやインスタンス、アロー演算子「 -> 」の使い方の認識が間違っているのでしょうか。
この回答を見るにはプレミアムプランへの登録が必要です
プレミアムプランとは?