@ 2025-10-17T14:05:56Z <?php
error_reporting(E_ALL);
$db = new PDO("sqlite::memory:");
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$queries = array(
"CREATE TABLE users (
userid INT PRIMARY KEY,
name TEXT,
country TEXT,
referred_by_userid INT
)",
"INSERT INTO users
(userid, name, country, referred_by_userid)
VALUES (104, 'Chris', 'Ukraine', NULL)",
"INSERT INTO users
(userid, name, country, referred_by_userid)
VALUES (105, 'Jamie', 'England', NULL)",
"INSERT INTO users
(userid, name, country, referred_by_userid)
VALUES (107, 'Robin', 'Germany', 104)",
"INSERT INTO users
(userid, name, country, referred_by_userid)
VALUES (108, 'Sean', 'Ukraine', NULL)",
"INSERT INTO users
(userid, name, country, referred_by_userid)
VALUES (109, 'Toni', 'Germany', NULL)",
"INSERT INTO users
(userid, name, country, referred_by_userid)
VALUES (110, 'Toni', 'Germany', NULL)",
"INSERT INTO users
(userid, name, country, referred_by_userid)
VALUES (111, 'Sean', 'France', NULL)",
);
foreach ($queries as $query) {
$db->exec($query);
}
$query = "SELECT userid, name, country, referred_by_userid FROM users";
$fetchMode = PDO::FETCH_COLUMN | PDO::FETCH_GROUP;
print "\nfetchAll (no column specified):\n";
$stmt = $db->query($query);
$result = $stmt->fetchAll($fetchMode);
print_r($result);
print "\nfetchAll (col 2):\n";
$stmt = $db->query($query);
$result = $stmt->fetchAll($fetchMode, 2);
print_r($result);
$query = "SELECT country, name, userid FROM users";
print "\nfetchAll (by country, no column specified):\n";
# Values are column 1, group is column 0
$stmt = $db->query($query);
$result = $stmt->fetchAll($fetchMode);
print_r($result);
print "\nfetchAll (by country, col 0):\n";
# Values are column 0, group is column 0
$stmt = $db->query($query);
$result = $stmt->fetchAll($fetchMode, 0);
print_r($result);
print "\nfetchAll (by country, col 1):\n";
# Values are column 0, group is column 0
$stmt = $db->query($query);
$result = $stmt->fetchAll($fetchMode, 1);
print_r($result);
print "\nfetchAll (by country, col 2):\n";
# Values are column 0, group is column 1
$stmt = $db->query($query);
$result = $stmt->fetchAll($fetchMode, 2);
print_r($result);
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 5.2.6 - 5.2.17 , 5.3.0 - 5.3.29 , 5.4.0 - 5.4.45 , 5.5.0 - 5.5.38 , 5.6.0 - 5.6.40 , 7.0.0 - 7.0.33 , 7.1.0 - 7.1.33 , 7.2.0 - 7.2.34 , 7.3.0 - 7.3.33 , 7.4.0 - 7.4.33 , 8.0.0 - 8.0.30 , 8.1.0 - 8.1.33 , 8.2.0 - 8.2.29 , 8.3.0 - 8.3.26 , 8.4.1 - 8.4.13 fetchAll (no column specified):
Array
(
[104] => Array
(
[0] => Chris
)
[105] => Array
(
[0] => Jamie
)
[107] => Array
(
[0] => Robin
)
[108] => Array
(
[0] => Sean
)
[109] => Array
(
[0] => Toni
)
[110] => Array
(
[0] => Toni
)
[111] => Array
(
[0] => Sean
)
)
fetchAll (col 2):
Array
(
[Ukraine] => Array
(
[0] => 104
[1] => 108
)
[England] => Array
(
[0] => 105
)
[Germany] => Array
(
[0] => 107
[1] => 109
[2] => 110
)
[France] => Array
(
[0] => 111
)
)
fetchAll (by country, no column specified):
Array
(
[Ukraine] => Array
(
[0] => Chris
[1] => Sean
)
[England] => Array
(
[0] => Jamie
)
[Germany] => Array
(
[0] => Robin
[1] => Toni
[2] => Toni
)
[France] => Array
(
[0] => Sean
)
)
fetchAll (by country, col 0):
Array
(
[Ukraine] => Array
(
[0] => Ukraine
[1] => Ukraine
)
[England] => Array
(
[0] => England
)
[Germany] => Array
(
[0] => Germany
[1] => Germany
[2] => Germany
)
[France] => Array
(
[0] => France
)
)
fetchAll (by country, col 1):
Array
(
[Chris] => Array
(
[0] => Ukraine
)
[Jamie] => Array
(
[0] => England
)
[Robin] => Array
(
[0] => Germany
)
[Sean] => Array
(
[0] => Ukraine
[1] => France
)
[Toni] => Array
(
[0] => Germany
[1] => Germany
)
)
fetchAll (by country, col 2):
Array
(
[104] => Array
(
[0] => Ukraine
)
[105] => Array
(
[0] => England
)
[107] => Array
(
[0] => Germany
)
[108] => Array
(
[0] => Ukraine
)
[109] => Array
(
[0] => Germany
)
[110] => Array
(
[0] => Germany
)
[111] => Array
(
[0] => France
)
)
Output for 5.1.0 - 5.1.3 , 5.2.0 - 5.2.5 fetchAll (no column specified):
Array
(
[104] => Array
(
[0] => Chris
)
[105] => Array
(
[0] => Jamie
)
[107] => Array
(
[0] => Robin
)
[108] => Array
(
[0] => Sean
)
[109] => Array
(
[0] => Toni
)
[110] => Array
(
[0] => Toni
)
[111] => Array
(
[0] => Sean
)
)
fetchAll (col 2):
Array
(
[104] => Array
(
[0] => Ukraine
)
[105] => Array
(
[0] => England
)
[107] => Array
(
[0] => Germany
)
[108] => Array
(
[0] => Ukraine
)
[109] => Array
(
[0] => Germany
)
[110] => Array
(
[0] => Germany
)
[111] => Array
(
[0] => France
)
)
fetchAll (by country, no column specified):
Array
(
[Ukraine] => Array
(
[0] => Chris
[1] => Sean
)
[England] => Array
(
[0] => Jamie
)
[Germany] => Array
(
[0] => Robin
[1] => Toni
[2] => Toni
)
[France] => Array
(
[0] => Sean
)
)
fetchAll (by country, col 0):
Array
(
[Ukraine] => Array
(
[0] => Ukraine
[1] => Ukraine
)
[England] => Array
(
[0] => England
)
[Germany] => Array
(
[0] => Germany
[1] => Germany
[2] => Germany
)
[France] => Array
(
[0] => France
)
)
fetchAll (by country, col 1):
Array
(
[Ukraine] => Array
(
[0] => Chris
[1] => Sean
)
[England] => Array
(
[0] => Jamie
)
[Germany] => Array
(
[0] => Robin
[1] => Toni
[2] => Toni
)
[France] => Array
(
[0] => Sean
)
)
fetchAll (by country, col 2):
Array
(
[Ukraine] => Array
(
[0] => 104
[1] => 108
)
[England] => Array
(
[0] => 105
)
[Germany] => Array
(
[0] => 107
[1] => 109
[2] => 110
)
[France] => Array
(
[0] => 111
)
)
Output for 5.1.4 - 5.1.6 Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in /in/2f7aV:4
Stack trace:
#0 /in/2f7aV(4): PDO->__construct('sqlite::memory:')
#1 {main}
thrown in /in/2f7aV on line 4
Process exited with code 255 . Output for 5.0.0 - 5.0.5 Fatal error: Class 'PDO' not found in /in/2f7aV on line 4
Process exited with code 255 . Output for 4.4.2 - 4.4.9 Parse error: syntax error, unexpected ',', expecting '(' in /in/2f7aV on line 5
Process exited with code 255 . Output for 4.3.0 - 4.3.1 , 4.3.5 - 4.3.11 , 4.4.0 - 4.4.1 Parse error: parse error, unexpected ',', expecting '(' in /in/2f7aV on line 5
Process exited with code 255 . Output for 4.3.2 - 4.3.4 Parse error: parse error, expecting `'('' in /in/2f7aV on line 5
Process exited with code 255 . preferences:dark mode live preview ace vim emacs key bindings
117.94 ms | 419 KiB | 5 Q