iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >怎么快速理解PHP过滤器
  • 731
分享到

怎么快速理解PHP过滤器

2023-06-25 12:06:44 731人浏览 安东尼
摘要

这篇文章主要介绍“怎么快速理解PHP过滤器”,在日常操作中,相信很多人在怎么快速理解php过滤器问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么快速理解PHP过滤器”的疑惑有所帮助!接下来,请跟着小编一起来

这篇文章主要介绍“怎么快速理解PHP过滤器”,在日常操作中,相信很多人在怎么快速理解php过滤器问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么快速理解PHP过滤器”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

怎么快速理解PHP过滤器

PHP过滤器

什么是过滤器,可以先把过滤器简单的理解为过滤掉不安全的数据。那我们为什么要使用过了不起呢?在我们的日常开发中几乎所有的WEB应用程序都会依赖外部的输入,这些数据通常都是来自类似Web服务的其他应用程序或者来自用户。我们通过过滤器的使用能够确保应用程序能够获得正确的输入类型。

我们应该对像来自表单的输入数据、Cookies、服务器变量和数据库查询结果等这样的外部数据进行过滤,对输入进行过滤是很重要的,因此我们需要使用过滤器。

PHP过滤器是用于验证和过滤来自非安全来源的数据,是测试、验证和过滤用户输入或者自定义数据时任何Web应用程序的重要组成部分,它的设计目的就是为了是数据处理更轻松快捷。

函数和过滤器

当我们需要过滤变量的时候,可以使用很多过滤函数:filter_var() 通过一个指定的过滤器来过滤单一的变量;filter_var_array() 通过相同的或不同的过滤器来过滤多个变量;filter_input获取一个输入变量,并对它进行过滤;filter_input_array获取多个输入变量,并通过相同的或不同的过滤器对它们进行过滤。

接下来我们通过一个示例来看一下通过filter_var() 函数验证了一个整数,示例如下:

<?phpheader("Content-type:text/html;charset=utf-8");$int = 123;if(!filter_var($int, FILTER_VALIDATE_INT)){    echo("不是一个合法的整数");}else{    echo("是个合法的整数");}?>

输出结果:

怎么快速理解PHP过滤器

上述示例便是通过filter_var() 过滤函数来验证了一个整数,接下来看一下我们常用的两种过滤器。

  • Validating 过滤器:用于验证用户输入,有着严格的格式规则(比如 URL 或 E-Mail 验证),如果成功则返回预期的类型,如果失败则返回 FALSE。

  • Sanitizing 过滤器:用于允许或禁止字符串中指定的字符,无数据格式规则,始终返回字符串。

选项和标志

选项和标志用于向指定的过滤器添加额外的过滤选项。不同的过滤器有不同的选项和标志。

接下来我们通过示例来看一下用 filter_var() "min_range" 以及 "max_range" 选项验证了一个整数,示例如下:

<?phpheader("Content-type:text/html;charset=utf-8");$var=300;$int_options = array(    "options"=>array    (        "min_range"=>0,   //最小值        "max_range"=>256  //最大值    ));if(!filter_var($var, FILTER_VALIDATE_INT, $int_options)){    echo("不是一个合法的整数");}else{    echo("是个合法的整数");}?>

输出结果:

怎么快速理解PHP过滤器

在上述示例中,需要注意的是:就像上面的代码一样,选项必须放入一个名为 "options" 的相关数组中。如果使用标志,则不需在数组内。由于整数是 "300",它不在指定的范围内,所以输出结果如上。

验证输入

接下来让我们试着验证来自表单的输入。我们需要做的第一件事情是确认是否存在我们正在查找的输入数据。然后我们用 filter_input() 函数过滤输入的数据。

接下来我们通过示例来看一下以GET的方式输入变量 "email" 被传到 PHP 页面,示例如下:

<?phpheader("Content-type:text/html;charset=utf-8");if(!filter_has_var(INPUT_GET, "email")){    echo("没有 email 参数");}else{    if (!filter_input(INPUT_GET, "email", FILTER_VALIDATE_EMAIL))    {        echo "不是一个合法的 E-Mail";    }    else    {        echo "是一个合法的 E-Mail";    }}?>

输出结果:

怎么快速理解PHP过滤器

其中我们需要注意的是:上面的实例有一个通过 "GET" 方法传送的输入变量 (email),检测是否存在 "GET" 类型的 "email" 输入变量,如果存在输入变量,检测它是否是有效的 e-mail 地址。

净化输入

让我们试着清理一下从表单传来的 URL。首先,我们要确认是否存在我们正在查找的输入数据。然后,我们用 filter_input() 函数来净化输入数据。

下面我们通过示例来看一下输入变量 "url" 被传到 PHP 页面,示例如下:

<?phpheader("Content-type:text/html;charset=utf-8");if(!filter_has_var(INPUT_GET, "url")){    echo("没有 url 参数");}else{    $url = filter_input(INPUT_GET,        "url", FILTER_SANITIZE_URL);    echo $url;}?>

输出结果:

怎么快速理解PHP过滤器

其中我们需要注意的是:

FILTER_SANITIZE_URL 过滤器删除字符串中所有非法的 URL 字符。上面的实例有一个通过 "GET" 方法传送的输入变量 (url):检测是否存在 "GET" 类型的 "url" 输入变量,如果存在此输入变量,对其进行净化(删除非法字符),并将其存储在 $url 变量中。

到此,关于“怎么快速理解PHP过滤器”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: 怎么快速理解PHP过滤器

本文链接: https://www.lsjlt.com/news/304408.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么快速理解PHP过滤器
    这篇文章主要介绍“怎么快速理解PHP过滤器”,在日常操作中,相信很多人在怎么快速理解PHP过滤器问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么快速理解PHP过滤器”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-25
  • PHP过滤器怎么用
    本篇内容主要讲解“PHP过滤器怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PHP过滤器怎么用”吧!PHP 过滤器PHP 过滤器用于验证和过滤来自非安全来源的数据,比如用户的输入。。。。。...
    99+
    2023-06-04
  • 如何快速理解Scrapy分布式爬虫、队列和布隆过滤器
    本篇内容介绍了“如何快速理解Scrapy分布式爬虫、队列和布隆过滤器”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!快速上手Step 0:首先...
    99+
    2023-06-16
  • java过滤器怎么指定过滤文件
    在Java中,可以使用`javax.swing.filechooser.FileNameExtensionFilter`类来指定过滤...
    99+
    2023-10-11
    java
  • php怎么过滤违禁词
    这篇文章主要讲解了“php怎么过滤违禁词”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php怎么过滤违禁词”吧!什么是违禁词?违禁词是指在网站或应用程序中,用户不能使用的词语或敏感词汇。这些...
    99+
    2023-07-05
  • PHP过滤器指的是什么
    这篇文章主要介绍了PHP过滤器指的是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。什么是 PHP 过滤器?PHP 过滤器用于验证和过滤来自非安全来源的数据。测试、验证和过...
    99+
    2023-06-15
  • PHP中怎么实现数据过滤
    本篇文章给大家分享的是有关PHP中怎么实现数据过滤,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。PHP数据过滤调度方法这种方法是用一个单一的PHP脚本调度(通过 URL)。其他...
    99+
    2023-06-17
  • PHP中怎么用array_filter()过滤数组
    在PHP中,可以使用array_filter()函数来过滤数组。array_filter()函数的作用是使用回调函数过滤数组中的元素...
    99+
    2024-04-02
  • PHP伪协议filter详解,php://filter协议过滤器
    「作者主页」:士别三日wyx 「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」:对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 ...
    99+
    2023-08-31
    php 网络安全 人工智能 ai
  • CorsFilter 过滤器解决跨域的处理
    CorsFilter 过滤器如何解决跨域 不多逼逼,直接贴代码,前端所有请求头都放在headers里面就行 @Component public class CorsFilter ...
    99+
    2024-04-02
  • Shell过滤器怎么使用
    这篇文章主要介绍“Shell过滤器怎么使用”,在日常操作中,相信很多人在Shell过滤器怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Shell过滤器怎么使用”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-09
  • VUE2.X过滤器怎么用
    这篇文章将为大家详细讲解有关VUE2.X过滤器怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。VUE2.X过滤器的使用方法有几种,今天讲一种,以cnode社区API为...
    99+
    2024-04-02
  • tomcat启动过滤器异常怎么解决
    如果Tomcat启动时出现过滤器异常,可以尝试以下几种解决方法:1. 检查过滤器配置:查看web.xml文件或者注解配置,确认过滤器...
    99+
    2023-08-19
    tomcat
  • Vue中过滤器怎么用
    这篇文章主要为大家展示了“Vue中过滤器怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Vue中过滤器怎么用”这篇文章吧。前言最近在项目的开发中,出现一些格...
    99+
    2024-04-02
  • Vue过滤器怎么实现
    这篇文章主要介绍“Vue过滤器怎么实现”,在日常操作中,相信很多人在Vue过滤器怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Vue过滤器怎么实现”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!&l...
    99+
    2023-06-25
  • vue.js中过滤器怎么用
    这篇文章给大家分享的是有关vue.js中过滤器怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。前言大家再使用vue做项目时,查询功能当然必不可少,这就得使用vue强大的fil...
    99+
    2024-04-02
  • AngularJS怎么使用过滤器
    这篇文章给大家分享的是有关AngularJS怎么使用过滤器的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、为什么使用过滤器? 在实际操作中,我们需要对统一数据源进行多次转换,比...
    99+
    2024-04-02
  • Java利用布隆过滤器实现快速检查元素是否存在
    目录Guava BloomFilter基本概念应用场景优缺点实现原理示例结束语Guava BloomFilter 布隆过滤器是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以...
    99+
    2022-11-13
    Java布隆过滤器检查元素是否存在 Java布隆过滤器 Java 检查元素是否存在
  • 爬虫怎么通过代理ip快速获取数据
    小编给大家分享一下爬虫怎么通过代理ip快速获取数据,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、代理ip提高频率是有限的通常,网络服务器检测爬虫类程序的一大依...
    99+
    2023-06-15
  • 如何通过PHP快速解码指定JSON字符串
    这篇文章主要介绍了如何通过PHP快速解码指定JSON字符串,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。首先看一下JSON示例代码,如下:{"Title"...
    99+
    2023-06-20
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作