xref: /PHP-8.0/ext/filter/tests/011.phpt (revision 46c0c82a)
1--TEST--
2filter_input()
3--INI--
4precision=14
5--SKIPIF--
6<?php if (!extension_loaded("filter")) die("skip"); ?>
7--GET--
8a=<b>test</b>&b=http://example.com
9--POST--
10c=<p>string</p>&d=12345.7
11--FILE--
12<?php
13ini_set('html_errors', false);
14var_dump(filter_input(INPUT_GET, "a", FILTER_SANITIZE_STRIPPED));
15var_dump(filter_input(INPUT_GET, "b", FILTER_SANITIZE_URL));
16var_dump(filter_input(INPUT_GET, "a", FILTER_SANITIZE_SPECIAL_CHARS, array(1,2,3,4,5)));
17try {
18    filter_input(INPUT_GET, "b", FILTER_VALIDATE_FLOAT, new stdClass);
19} catch (TypeError $exception) {
20    echo $exception->getMessage() . "\n";
21}
22var_dump(filter_input(INPUT_POST, "c", FILTER_SANITIZE_STRIPPED, array(5,6,7,8)));
23var_dump(filter_input(INPUT_POST, "d", FILTER_VALIDATE_FLOAT));
24var_dump(filter_input(INPUT_POST, "c", FILTER_SANITIZE_SPECIAL_CHARS));
25var_dump(filter_input(INPUT_POST, "d", FILTER_VALIDATE_INT));
26
27echo "Done\n";
28?>
29--EXPECT--
30string(4) "test"
31string(18) "http://example.com"
32string(27) "&#60;b&#62;test&#60;/b&#62;"
33filter_input(): Argument #4 ($options) must be of type array|int, stdClass given
34string(6) "string"
35float(12345.7)
36string(29) "&#60;p&#62;string&#60;/p&#62;"
37bool(false)
38Done
39