Page MenuHomeDevCentral

Fetch a scalar value from a result
ClosedPublic

Authored by dereckson on Sat, Nov 1, 12:05.

Details

Summary

While queryScalar is useful for fetching scalar values in queries like
SELECT count(*), it cannot be used with prepared statements in PDO.

DatabaseResult::fetchScalar returns the first item of the next row.

The following fluent pattern is now supported:

$sql = "SELECT count(*) FROM foo WHERE id = :id";

return $this->db
    ->prepare($sql)
    ->with("id", $this->id)
    ->query()
    ->fetchScalar();

fetchScalar is implemented at DatabaseResult level, making it available
with all drivers, not just PDO.

Ref T2169

Test Plan
  • New unit test for current Result tests classes
  • Tested with D3835 on Obsidian codebase

Diff Detail

Repository
rKERUALD Keruald libraries development repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

dereckson created this revision.
dereckson edited the test plan for this revision. (Show Details)
dereckson added a child revision: D3835: Read from Orbeon Forms.
This revision is now accepted and ready to land.Sat, Nov 1, 12:09