PHP 8.5.0 Alpha 1 available for testing

Voting

: min(seven, one)?
(Example: nine)

The Note You're Voting On

php at richardneill dot org
11 years ago
A note on type-juggling of booleans:
pg_query_params() and friends do seamless, automatic conversion between PHP-NULL and SQL-NULL and back again, where appropriate.
Hoever, everything else goes in (and comes out) as a string.
The following approach may be helpful when handling boolean fields:

<?php
$sql
= " ... ";
$params = array (1, 2, 3, true, false);

//Convert booleans to 'true' and 'false'. [NULLS are already handled].
foreach ($params as &$value){
if (
is_bool($value)){
$value = ($value) ? 'true':'false';
}
}

//Now do the query:
$result = pg_query_params ($sql, $params);
$row = pg_fetch_assoc ($result,0) //first row

//For booleans, convert 't' and 'f' back to true and false. Check the column type so we don't accidentally convert the wrong thing.
foreach ($row as $key => &$value){
$type = pg_field_type($result,pg_field_num($result, $key));
if (
$type == 'bool'){
$value = ($value == 't');
}
}

//$row[] now contains booleans, NULLS, and strings.
?>

<< Back to user notes page

To Top