草庐IT

FILTER_VALIDATE

全部标签

php - validate() 返回 false 但 getErrors() 返回一个空数组 - Yii

我正在构建一个yii应用程序。继承人的代码-:$id=2;$model=Page::model()->findByPk(2);$model->title='HeyMan';if($model->validate()){echo'Validationretunedtrue';}else{$array=$model->getErrors();$message='Validationreturnedfalse';}结果是validate()返回false而getErrors()返回一个空数组。这里有什么问题?谢谢 最佳答案 您是否在模型中

php - ZF2 : How do I use InArray validator to validate Multiselect form element?

我有一个ZF2表单,出于特定原因我不得不禁用native验证器。然后,当以编程方式向表单添加元素时,我还添加了验证器。其中一个元素是多选数组。$form->add(array('type'=>'Zend\Form\Element\Select','options'=>array(('label'=>'fewitems','value_options'=>Array('one'=>'one','two'=>'two','three'=>'three','four'=>'four',)),'attributes'=>array('multiple'=>'multiple','value'=

php - validate() 函数中的 php 表单验证错误

在这段代码中,我无法匹配validate()函数中的正则表达式帮我找出错误的地方我在用户输入中输入了除字母以外的数据,例如(john1246@##$##@+-)它在validate()函数中返回输入值(john1246@##$##@+-)或$data,但未显示应返回PRG_MTH_ERR的错误。我的代码有什么问题?验证.phpfunctionvalidate($data,$reg_exp=""){$data=trim($data);$data=stripslashes($data);$data=htmlspecialchars($data);if(empty($data)==true)

php filter var返回错误结果

我想使用phpfiler_var函数,但它返回了一个错误的结果,它似乎没有考虑范围:$v=54;$int_opts=array('min_range'=>0,'max_range'=>24);if(filter_var($v,FILTER_VALIDATE_INT,$int_opts))echo'aninteger';elseecho'notaninteger';这不应该是一个整数,因为54不在0到24之间,但它返回true并回显“一个整数”。这里有什么问题?谢谢。 最佳答案 “options”数组需要有一个名为“options”的

PHP filter_input 验证 INT

我有这段代码:$range=array('options'=>array('min_range'=>0,'max_range'=>10));if(!$number=filter_input(INPUT_POST,'number',FILTER_VALIDATE_INT,$range)){exit('Error');}“数字”输入将从0到10的选项发送。问题是如果number=0则返回“错误”。这有什么问题吗?谢谢 最佳答案 这是因为!0为真。为什么?通过添加!您正在进行bool检查,因此您的变量得到转换。并根据manual:When

php - 使用 filter 方法过滤 Laravel Eloquent 集合

$events=Event::all();if(isset($scheduling)&&$scheduling!=="All"){$events=$events->filter(function($event)use($scheduling){return$event->where('scheduling',$scheduling);});}$events=$events->get();有人可以更正这段代码吗?内部过滤器不工作。无论是否应用过滤器,结果都相同。我需要根据条件应用这样的批处理过滤器 最佳答案 您不必在其中使用where

php - filter_input(INPUT_GET, ‘my_string’, FILTER_SANITIZE_STRING); VS 正则表达式预匹配 PHP

出于经验哪个更好用filter_input(INPUT_GET,‘my_string’,FILTER_SANITIZE_STRING);或者用于清理用户输入数据的正则表达式preg_match? 最佳答案 我更喜欢filter_input而不是正则表达式-因为它更容易阅读。 关于php-filter_input(INPUT_GET,‘my_string’,FILTER_SANITIZE_STRING);VS正则表达式预匹配PHP,我们在StackOverflow上找到一个类似的问题:

php - 如何传递对回调函数的引用以在带有额外参数的 array_filter 中使用?

我的方法的签名如下所示:publicfunctionProgramRuleFilter(&$program,$today=null){当我这样调用它时,$programs=array_filter($programs,array($this,'ProgramRuleFilter'));一切都按预期进行。ProgramRuleFilter方法更新$program数组,如果成功则返回true/false,从而正确过滤$programs。但是,现在我想向过滤器传递一个额外的参数,$today。我该怎么做?我正在尝试像这样调用它:$programs=array_filter($programs

php - 在 Foreach 循环中使用 FILTER() - PHP Goutte

我有这个代码require_once'vendor/autoload.php';使用Symfony\Component\DomCrawler\Crawler;$html=HelloWorld!ThisisspanHelloCrawler!ThisisspanHTML;$crawler=newCrawler($html);foreach($crawler->filter('body')as$domElement){$domElement->filter('span');}我遇到了这个错误。Fatalerror:CalltoundefinedmethodDOMElement::filter

php - array_filter 基于来自另一个数组的键

我有两个数组:$arr1=array('a'=>10,'b'=>20);$arr2=array('a'=>10,'b'=>20,'c'=>30);如何使用array_filter从$arr2中删除$arr1中不存在的元素?就像我例子中的“c”... 最佳答案 有一个函数专门用于此目的:array_intersect():array_intersect—Computestheintersectionofarrays$arr2=array_intersect($arr1,$arr2);如果你想比较键,而不是像array_intersec