Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
$filter=((weight ge 100 or weight le 10) and price le 15)
$query->where( [ [ 'or', 'weight<100', 'weight>10' ], 'and', 'price>1' ] )
'weight<100'. Надо как минимум проверить, что пришедший с клиента weight это колонка, а не что-то вроде '; drop table ... --'.select from `from` where `where` = 123
where:where`=1; drop table ... --?id и делаете запросselect * from `account` where `id` = 1;id, а ` = 1; select 1; -- select * from `account` where `id` = 1; select 1; -- ` = 1надо самому делать валидацию, защиту от SQL инъекций
стандартный грид с поддержкой OData (типа OpenUI5)
'weight<:weight'
пришлось дописать в разы больше
пагинацию
PHP и OData: пересаживаемся с велосипедов на технологию от Microsoft