草庐IT

digital-filter

全部标签

PHP 5.4 : Can I use multiple flags with a filter using filter_var_array()?

PHPManual:filter_var_array()mixedfilter_var_array(array$data[,mixed$definition[,bool$add_empty=true]])对于filter_var_array()调用的$definition参数,这样的东西可以工作吗?(数组语法>=PHP5.4)$def=['firstName'=>['filter'=>FILTER_SANITIZE_STRING,'flags'=>[FILTER_REQUIRE_SCALAR|FILTER_FLAG_NO_ENCODE_QUOTES|FILTER_FLAG_STRIP_

php - filter_input() $_SERVER ["REQUEST_URI"] 与 FILTER_SANITIZE_URL

我正在过滤$_SERVER["REQUEST_URI"]这样:$_request_uri=filter_input(INPUT_SERVER,'REQUEST_URI',FILTER_SANITIZE_URL);如php.net中所述:FILTER_SANITIZE_URLRemoveallcharactersexceptletters,digitsand$-_.+!*'(),{}|\^~[]`#%";/?:@&=.但是,浏览器发送这个REQUEST_URI值urlencode,因此它没有在这个filter_input()函数中被清理。说地址是http://www.example.co

php - 如何在使用 filter_input 的同时检查 POST 和 GET 数据?

我想知道是否有可能获取一个变量,无论它是在POST还是GET中,然后使用filter_input()对其进行清理。起初我认为$var=filter_input(INPUT_POST|INPUT_GET,"var",FILTER_SANITIZE_STRING)可能有效,但它没有,PHP手册指出你只能传递一种类型的输入。我还尝试了INPUT_REQUEST,但奇怪的是没有成功。该函数识别它(即它不会抛出一个错误,说我在$input中放错了东西),但它不会得到任何代码。是的,我知道不要在实时环境中使用INPUT_REQUEST,我只是纯粹测试它是否可行。目前我在做以下事情:$var=fil

php - Zend_Validate_EmailAddress 与 filter_var(..., FILTER_VALIDATE_EMAIL)

在Zend_Validate_EmailAddress和filter_var(...,FILTER_VALIDATE_EMAIL)中,验证电子邮件地址时哪个更好,为什么? 最佳答案 两者都可用于验证电子邮件地址,但Zend_Validate_EmailAddress更强大。虽然filter_var是一个简单的是或否验证器,但有许多选项可以改变Zend_Validate_EmailAddress的严格程度。您可以选择要验证的部分、验证这些部分的规则,甚至可以选择验证MX记录。最后,Zend_Validate_EmailAddress可

php - Symfony2 测试 : filter with html:contains return one value

我想在用户提交没有任何数据的表单时使用PHPUnit测试我的Symfony2应用程序。我的验证已激活,因此错误消息会在导航器中正确显示。例如在实体中:classFoo{/***@varstring**@Assert\NotBlank()*@ORM\Column(name="name",type="string",length=255)*/private$name;/***@varstring**@Assert\NotBlank()*@ORM\Column(name="city",type="string",length=255)*/private$city;}以及这个实体的类型:cla

php - 如何让这个 Filter 在这个 Validator 之后运行

我有一个元素。我想向其添加自定义验证器和自定义过滤器。验证器确保输入是几个允许值之一,然后过滤器将一些自定义值添加到输入。这意味着我必须在运行过滤器之前先验证原始输入。我按照这个顺序做$element=newZend_Form_Element_Text('element');$element->addValidator('PermittedValue',false);$element->addFilter('TotalHyphen',false);$this->addElement($element);但是这个命令没有得到遵守。过滤器首先运行并更改数据,然后验证器在过滤后的数据上运行,

php - 使用带参数的 filter_var

我正在尝试检查变量是否为整数以及她是否在调音区中:2-15。我正在尝试使用filter_var()函数来实现。但我不明白如何正确使用min_range和max_range参数。这行不通,我哪里错了?$c=48;if(filter_var($c,FILTER_VALIDATE_INT,array("min_range"=>2,"max_range"=>15))===false){echo"bad";} 最佳答案 min_range和max_range值必须是一个级别,更深://forfiltersthatacceptoptions,u

PHP 何时使用 filter_var 而不是内置 php 函数

我注意到您可以使用PHP做很多事情filter_var也可以用其他功能完成的功能。例如,过滤器FILTER_VALIDATE_REGEXP、FILTER_SANITIZE_ENCODED以及更多过滤器在PHP中也有各自的专用函数。什么时候应该使用filter_var什么时候应该使用PHP函数?有什么优点和缺点? 最佳答案 filter的优势扩展是您将一切都集中在一个地方。但你是对的,它并没有提供太多新颖的功能。您可以使用现有功能完成大部分工作,特别是preg_replace或preg_match而不是FILTER_VALIDATE_

PHP filter_var() - FILTER_VALIDATE_URL

FILTER_VALIDATE_URL过滤器在验证非ASCIIURL时似乎有一些问题:var_dump(filter_var('http://pt.wikipedia.org/wiki/',FILTER_VALIDATE_URL));//http://pt.wikipedia.org/wiki/var_dump(filter_var('http://pt.wikipedia.org/wiki/Guimarães',FILTER_VALIDATE_URL));//false为什么最后一个URL没有被正确验证?可能的解决方法是什么?运行PHP5.3.0。我还想知道在哪里可以找到FILTER

PHP 警告 : pack(): Type H: illegal hex digit r error

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:pack()inphp.Illegalhexdigitwarning我正在使用苹果的推送通知服务,为了发送通知,您必须以二进制形式构建消息。我收到以下行的以下错误:Warning:pack():TypeH:illegalhexdigitrWarning:pack():TypeH:illegalhexdigityNotice:ArraytostringconversioninC:\xampp\htdocs\firecom\FireComAPNS.phponline130这是抛出错误的代码行:$msg=chr(0