最近看了一下上级写的valid类,都是正则表达式。我想不用正则,应该会提高些运行速度, 比如验证是否是0~9的数字组合。 function check_num($data) { $len = strlen($data) for($i=0;$i= '0' && $ord <= '9' ) { return true; } else { return false; } } } 这样写应该比正则快。但如果这样,不是要写很多if来看用什么函数,因为php又不支持函数式编程。 不过最近看php手册,看到了可变函数。还算不错的解决办法。 php手册 可变函数示例 <?php function foo() { echo "In foo()
\n"; } function bar($arg = '') { echo "In bar(); argument was '$arg'.
\n"; } // 使用 echo 的包装函数 function echoit($string) { echo $string; } $func = 'foo'; $func(); // This calls foo() $func = 'bar'; $func('test'); // This calls bar() $func = 'echoit'; $func('test'); // This calls echoit() ?> 要调用和验证变量相关的函数 //简单示例 arr['type'] = 'num'; $func = 'check_' . arr['type']; //安全起见,限check_开头的函数。 $func($data);
PHP函数不支持功能,php不支持函数式编程的解决办法
最新推荐文章于 2022-04-16 01:20:27 发布