Exemple
<?php
include 'walousql/src/walousql.inc.php';
function example($exp){
global $walousql;
eval('$res = ' . $exp);
echo $exp . "\n" . var_export($res, true) . "\n\n";
}
$walousql = new walousql();
$walousql->add(array(
array(
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
array(
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
array(
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
array(
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
));
example('$walousql->search(array(array("type", "==", "Fruit"))); // or : $walousql->search(array(array("type", "=", "Fruit")));');
example('$walousql->search(array(array("calories", "===", 20)));');
example('$walousql->search(array(array("calories", "===", "20")));');
example('$walousql->search(array(array("type", "!=", "Fruit")));');
example('$walousql->search(array(array("calories", "!==", 20)));');
example('$walousql->search(array(array("calories", "!==", "20")));');
example('$walousql->search(array(array("calories", "<", 20)));');
example('$walousql->search(array(array("calories", "<=", 20)));');
example('$walousql->search(array(array("calories", ">", 47)));');
example('$walousql->search(array(array("calories", ">=", 47)));');
example('$walousql->search(array(array("name", "like", "Rang")));');
example('$walousql->search(array(array("name", "like binary", "Rang")));');
example('$walousql->search(array(array("name", "!like", "Rang")));');
example('$walousql->search(array(array("name", "!like binary", "Rang")));');
example('$walousql->search(array(array("name", "start", "ora")));');
example('$walousql->search(array(array("name", "start binary", "ora")));');
example('$walousql->search(array(array("name", "end", "Ange")));');
example('$walousql->search(array(array("name", "end binary", "Ange")));');
example('$walousql->search(array(array("citrus", "null")));');
example('$walousql->search(array(array("citrus", "!null")));');
example('$walousql->search(array(array("calories", "between", 20, 50)));');
example('$walousql->search(array(array("calories", "!between", 20, 50)));');
example('$walousql->search(array(array("color", "in", array("Red", "Yellow"))));');
example('$walousql->search(array(array("color", "!in", array("Red", "Yellow"))));');
example('$walousql->search(array(
array("type", "==", "Fruit"), "and",
array("calories", "<", 50)
)); // "and" can be replaced by "&&"');
example('$walousql->search(array(
array("type", "==", "Fruit"), "or",
array("calories", "<", 50)
)); // "or" can be replaced by "||"');
example('$walousql->search(array(
array("type", "==", "Fruit"), "and (",
array("calories", "<", 50), "or",
array("color", "==", "Green"),
")"
));');
example('$walousql->search(array(array("type", "==", "Fruit")), array("name" => SORT_ASC));');
example('$walousql->search(array(array("calories", "<", 90)), array("type" => SORT_DESC, "calories" => SORT_ASC));');
?>
L'exemple ci-dessus va afficher :
$walousql->search(array(array("type", "==", "Fruit"))); // or : $walousql->search(array(array("type", "=", "Fruit")));
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(array("calories", "===", 20)));
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
)
$walousql->search(array(array("calories", "===", "20")));
array (
)
$walousql->search(array(array("type", "!=", "Fruit")));
array (
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
)
$walousql->search(array(array("calories", "!==", 20)));
array (
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(array("calories", "!==", "20")));
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(array("calories", "<", 20)));
array (
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
)
$walousql->search(array(array("calories", "<=", 20)));
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
)
$walousql->search(array(array("calories", ">", 47)));
array (
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
)
$walousql->search(array(array("calories", ">=", 47)));
array (
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(array("name", "like", "Rang")));
array (
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(array("name", "like binary", "Rang")));
array (
)
$walousql->search(array(array("name", "!like", "Rang")));
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
)
$walousql->search(array(array("name", "!like binary", "Rang")));
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(array("name", "start", "ora")));
array (
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(array("name", "start binary", "ora")));
array (
)
$walousql->search(array(array("name", "end", "Ange")));
array (
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(array("name", "end binary", "Ange")));
array (
)
$walousql->search(array(array("citrus", "null")));
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
)
$walousql->search(array(array("citrus", "!null")));
array (
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(array("calories", "between", 20, 50)));
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(array("calories", "!between", 20, 50)));
array (
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
)
$walousql->search(array(array("color", "in", array("Red", "Yellow"))));
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
)
$walousql->search(array(array("color", "!in", array("Red", "Yellow"))));
array (
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(
array("type", "==", "Fruit"), "and",
array("calories", "<", 50)
)); // "and" can be replaced by "&&"
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(
array("type", "==", "Fruit"), "or",
array("calories", "<", 50)
)); // "or" can be replaced by "||"
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(
array("type", "==", "Fruit"), "and (",
array("calories", "<", 50), "or",
array("color", "==", "Green"),
")"
));
array (
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)
$walousql->search(array(array("type", "==", "Fruit")), array("name" => SORT_ASC));
array (
1 =>
array (
'name' => 'Banana',
'color' => 'Yellow',
'type' => 'Fruit',
'calories' => 95,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
)
$walousql->search(array(array("calories", "<", 90)), array("type" => SORT_DESC, "calories" => SORT_ASC));
array (
2 =>
array (
'name' => 'Cucumber',
'color' => 'Green',
'type' => 'Vegetable',
'calories' => 10,
),
0 =>
array (
'name' => 'Tomato',
'color' => 'Red',
'type' => 'Fruit',
'calories' => 20,
),
3 =>
array (
'name' => 'Orange',
'color' => 'Orange',
'type' => 'Fruit',
'calories' => 47,
'citrus' => true,
),
)