Handle NULL values safely across all databases.
use tommyknocker\pdodb\helpers\Db;
$db->find()->table('users')->insert([
'name' => 'Alice',
'email' => 'alice@example.com',
'deleted_at' => Db::null()
]);use tommyknocker\pdodb\helpers\Db;
// Find users not deleted
$users = $db->find()
->from('users')
->where(Db::isNull('deleted_at'))
->get();$users = $db->find()
->from('users')
->where(Db::isNotNull('email'))
->get();$users = $db->find()
->from('users')
->select([
'name',
'display_name' => Db::ifNull('username', 'Anonymous')
])
->get();$orders = $db->find()
->from('orders')
->select([
'total',
'discount' => Db::ifNull('discount', 0)
])
->get();$users = $db->find()
->from('users')
->select([
'id',
'contact' => Db::coalesce('phone', 'email', 'N/A')
])
->get();$users = $db->find()
->from('products')
->select([
'name',
'image_url' => Db::coalesce('main_image', 'thumbnail', 'default.jpg')
])
->get();$users = $db->find()
->from('users')
->select([
'id',
'name',
'display_age' => Db::nullIf('age', 0) // NULL if age = 0
])
->get();// Mark as deleted
$db->find()
->table('users')
->where('id', $userId)
->update([
'deleted' => 1,
'deleted_at' => Db::now()
]);
// Query active users
$active = $db->find()
->from('users')
->where(Db::isNull('deleted_at'))
->get();$orders = $db->find()
->from('orders')
->select([
'id',
'total',
'discount' => Db::coalesce('discount_amount', '0'),
'final_total' => Db::coalesce(
Db::raw('total - COALESCE(discount_amount, 0)'),
'total'
)
])
->get();// Migrate NULL to actual value
$db->find()
->table('users')
->update([
'username' => Db::coalesce('username', 'email')
]);- Comparison Helpers - WHERE conditions
- String Helpers - String operations
- Core Helpers - Essential helpers