xref: /PHP-8.0/ext/pdo/tests/pdo_035.phpt (revision 5bb41fa6)
1--TEST--
2PDO Common: PDORow + get_parent_class()
3--SKIPIF--
4<?php
5if (!extension_loaded('pdo_sqlite')) die ("skip Need PDO_SQlite support");
6?>
7--FILE--
8<?php
9$db = new PDO('sqlite::memory:');
10$db->exec('CREATE TABLE test (id int)');
11$db->exec('INSERT INTO test VALUES (23)');
12
13$stmt = $db->prepare('SELECT id FROM test');
14$stmt->execute();
15$result = $stmt->fetch(PDO::FETCH_LAZY);
16
17echo get_class($result), "\n";
18var_dump(get_parent_class($result));
19
20try {
21    $result->foo = 1;
22} catch (Error $e) {
23    echo $e->getMessage(), "\n";
24}
25try {
26    $result[0] = 1;
27} catch (Error $e) {
28    echo $e->getMessage(), "\n";
29}
30try {
31    unset($result->foo);
32} catch (Error $e) {
33    echo $e->getMessage(), "\n";
34}
35try {
36    unset($result[0]);
37} catch (Error $e) {
38    echo $e->getMessage(), "\n";
39}
40
41?>
42--EXPECT--
43PDORow
44bool(false)
45Cannot write to PDORow property
46Cannot write to PDORow offset
47Cannot unset PDORow property
48Cannot unset PDORow offset
49