Annotation of embedaddon/php/ext/filter/tests/029.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: filter_var() and FILTER_CALLBACK
        !             3: --SKIPIF--
        !             4: <?php if (!extension_loaded("filter")) die("skip"); ?>
        !             5: --FILE--
        !             6: <?php
        !             7: 
        !             8: /* Simple callback function */
        !             9: function test($var) {
        !            10:        return strtoupper($var);
        !            11: }
        !            12:        
        !            13: var_dump(filter_var("data", FILTER_CALLBACK, array("options"=>"test")));
        !            14: var_dump(filter_var("~!@#$%^&*()_QWERTYUIOPASDFGHJKLZXCVBNM<>>?\"}{:", FILTER_CALLBACK, array("options"=>"test")));
        !            15: var_dump(filter_var("", FILTER_CALLBACK, array("options"=>"test")));
        !            16: var_dump(filter_var("qwe", FILTER_CALLBACK, array("options"=>"no such func")));
        !            17: var_dump(filter_var("qwe", FILTER_CALLBACK, array("options"=>"")));
        !            18: var_dump(filter_var("qwe", FILTER_CALLBACK));
        !            19: 
        !            20: /* Simple class method callback */
        !            21: class test_class {
        !            22:        static function test ($var) {
        !            23:                return strtolower($var);
        !            24:        }
        !            25: }
        !            26: 
        !            27: var_dump(filter_var("dAtA", FILTER_CALLBACK, array("options"=>array("test_class", "test"))));
        !            28: var_dump(filter_var("~!@#$%^&*()_QWERTYUIOPASDFGHJKLZXCVBNM<>>?\"}{:", FILTER_CALLBACK, array("options"=>array("test_class","test"))));
        !            29: var_dump(filter_var("", FILTER_CALLBACK, array("options"=>array("test_class","test"))));
        !            30: 
        !            31: /* empty function without return value */
        !            32: function test1($var) {
        !            33: }
        !            34:        
        !            35: var_dump(filter_var("data", FILTER_CALLBACK, array("options"=>"test1")));
        !            36: var_dump(filter_var("~!@#$%^&*()_QWERTYUIOPASDFGHJKLZXCVBNM<>>?\"}{:", FILTER_CALLBACK, array("options"=>"test1")));
        !            37: var_dump(filter_var("", FILTER_CALLBACK, array("options"=>"test1")));
        !            38: 
        !            39: /* attempting to change data by reference */
        !            40: function test2(&$var) {
        !            41:        $var = 1;
        !            42: }
        !            43:        
        !            44: var_dump(filter_var("data", FILTER_CALLBACK, array("options"=>"test2")));
        !            45: var_dump(filter_var("~!@#$%^&*()_QWERTYUIOPASDFGHJKLZXCVBNM<>>?\"}{:", FILTER_CALLBACK, array("options"=>"test2")));
        !            46: var_dump(filter_var("", FILTER_CALLBACK, array("options"=>"test2")));
        !            47: 
        !            48: /* unsetting data */
        !            49: function test3(&$var) {
        !            50:        unset($var);
        !            51: }
        !            52:        
        !            53: var_dump(filter_var("data", FILTER_CALLBACK, array("options"=>"test3")));
        !            54: var_dump(filter_var("~!@#$%^&*()_QWERTYUIOPASDFGHJKLZXCVBNM<>>?\"}{:", FILTER_CALLBACK, array("options"=>"test3")));
        !            55: var_dump(filter_var("", FILTER_CALLBACK, array("options"=>"test3")));
        !            56: 
        !            57: /* unset data and return value */
        !            58: function test4(&$var) {
        !            59:        unset($var);
        !            60:        return 1;
        !            61: }
        !            62:        
        !            63: var_dump(filter_var("data", FILTER_CALLBACK, array("options"=>"test4")));
        !            64: 
        !            65: /* thrown exception in the callback */
        !            66: function test5(&$var) {
        !            67:        throw new Exception("test");
        !            68: }
        !            69: 
        !            70: try {
        !            71:        var_dump(filter_var("data", FILTER_CALLBACK, array("options"=>"test5")));
        !            72: } catch (Exception $e) {
        !            73:        var_dump($e->getMessage());
        !            74: }
        !            75: 
        !            76: echo "Done\n";
        !            77: ?>
        !            78: --EXPECTF--    
        !            79: string(4) "DATA"
        !            80: string(46) "~!@#$%^&*()_QWERTYUIOPASDFGHJKLZXCVBNM<>>?"}{:"
        !            81: string(0) ""
        !            82: 
        !            83: Warning: filter_var(): First argument is expected to be a valid callback in %s on line %d
        !            84: NULL
        !            85: 
        !            86: Warning: filter_var(): First argument is expected to be a valid callback in %s on line %d
        !            87: NULL
        !            88: 
        !            89: Warning: filter_var(): First argument is expected to be a valid callback in %s on line %d
        !            90: NULL
        !            91: string(4) "data"
        !            92: string(46) "~!@#$%^&*()_qwertyuiopasdfghjklzxcvbnm<>>?"}{:"
        !            93: string(0) ""
        !            94: NULL
        !            95: NULL
        !            96: NULL
        !            97: NULL
        !            98: NULL
        !            99: NULL
        !           100: NULL
        !           101: NULL
        !           102: NULL
        !           103: int(1)
        !           104: string(4) "test"
        !           105: Done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>