Heim > Backend-Entwicklung > PHP-Tutorial > php中的过滤器

php中的过滤器

WBOY
Freigeben: 2016-07-28 08:27:46
Original
1118 Leute haben es durchsucht

       校验字符串是程序中最常见的功能。比如遇见这样一个场景,校验字符串是否符合ip地址格式。通常有两种方法:

     (1) 手写一个ip地址校验函数

     (2) 正则表达式

       在使用C语言处理此类问题的时候,通常会花十几分钟自己写一个校验函数。在使用支持正则的语言(php、C++11等)在处理此类问题时,通常使用正则。但是正则有一定使用难度,而且读起来也不直观。(这绝不意味正则不重要)。有的时候往往只想快速的解决眼前的问题而已,那该怎么办呢?至少在php中我们可以使用过滤器。

       过滤器具体通过过滤函数来使用,如filter_var用来判断一个变量是否符合要求

      下面是一段用来验证IP和邮件是否有效的代码:

   <?php $ip="192.168.0.222";
    $is_ip=filter_var($ip,FILTER_VALIDATE_IP);
    var_dump($is_ip);
    $mail="123@xx.com";
    $is_mail=filter_var($mail,FILTER_VALIDATE_EMAIL);
    var_dump($is_mail);
   ?>
Nach dem Login kopieren

      这要比自己校验字符串 or 正则方便多了吧~

      php中的过滤器分三种类型:带有VALIDATE字样的过滤器只检查字符串是否有效,不会改变字符串的状态。带有SANITIZE的过滤器会将不符合要求的子串删除,第三种是FILTER_CALLBACK。即使用自己的回调函数作校验。

      在w3cschool的在线网站上提供了一个表格,详细列出了php中各过滤器和过滤函数的功能。

      PS:过滤器在 PHP5.2之后的版本中默认提供,之前的版本需要安装扩展才能使用。过滤器虽然好用,但其功能仍然比较有限,在面对具体的需求时,还需和字符串库、正则结合使用。

以上就介绍了 php中的过滤器,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage