草庐IT

验证数组的PHP函数

是否有一个函数我可以给一个数组,如果提供的函数对所有数组都返回true,该数组将返回true?theFunction(array(1,2,3),'is_numeric')//truetheFunction(array(1,"b",3),'is_numeric')//false 最佳答案 不,但是你可以使用array_reduce:array_reduce(array(1,2,3),function($a,$v){return$a&&is_numeric($v);},true);您当然可以构建自己的高阶函数:functionfor_a

php - 我怎样才能简化这个数组?

我有这个数组:Array([0]=>Array([tag_id]=>1)[2]=>Array([tag_id]=>3)[22]=>Array([tag_id]=>44)[23]=>Array([tag_id]=>45)[25]=>Array([tag_id]=>47)[26]=>Array([tag_id]=>48))我希望它看起来像这样,这样我就可以更简单地遍历并将每个值插入数据库:Array([0]=>1[1]=>3[2]=>44[3]=>45[4]=>47[5]=>48) 最佳答案 您可以使用array_map.PHP5.3或

php - 从多维数组中搜索和删除

如果我的值ID等于1并搜索一个数组,我想从数组本身中删除,如果找到ID为1的数组。Array([0]=>Array([id]=>1)[1]=>Array([id]=>4)[2]=>Array([id]=>5)[3]=>Array([id]=>7))新数组Array([0]=>Array([id]=>4)[1]=>Array([id]=>5)[2]=>Array([id]=>7))我正在使用search_array,我假设因为它是多维的所以找不到它。有没有办法像上面那样搜索数组? 最佳答案 如果您只是检查单个值,为什么不使用forea

php - 如何在 PHP 中检测字符串中的分隔符?

我很好奇如果你有一个字符串,你会如何检测分隔符?我们知道php可以使用explode()拆分字符串,这需要一个分隔符参数。但是在将分隔符发送到explode函数之前检测分隔符的方法呢?现在我只是将字符串输出给用户,他们输入分隔符。没关系,但我正在寻找应用程序来为我进行模式识别。我应该在字符串中寻找正则表达式来识别这种类型的模式吗?编辑:我最初未能指定可能有一组预期的分隔符。CSV中可能使用的任何分隔符。因此从技术上讲,任何人都可以使用任何字符来分隔CSV文件,但更有可能使用以下字符之一:逗号、分号、竖线和空格。编辑2:这是我为“确定的分隔符”提出的可行解决方案。$get_images=

php - 在多维数组的子数组中查找公共(public)值

我有以下数组:Array([0]=>Array([0]=>87[1]=>58[2]=>85[3]=>86)[1]=>Array([0]=>58[1]=>84)[2]=>Array([0]=>58))上面的这个数组是一个例子。实际数组的大小可变,但结构如下。基本上,我想在每个二级数组上运行array_intersect并获取它们之间共有的值(数字)。在本例中,它将是58。我不太确定从哪里开始。有什么建议吗? 最佳答案 这对我有用:functionmulti_intersect($arr){$return=array();foreach

php - in_array 问题

我有几个以数字作为项目的大数组,每个数组都有5000-10000个值。都是简单的数组,比如$array=array(125,345345,345,3485,324,65,746647,3221,...);我正在尝试在其中搜索某个数字,并针对不同的数字重复此操作近1000次。喜欢if$arrayhasitem345{returntrue}else{returnfalse}但是请求需要很长时间才能完成。有时服务器会给出超时错误。在结构简单但规模大的数组中搜索一些数字的最佳方法是什么? 最佳答案 最简单的方法是翻转数组(参见array_f

php - 如何在 Yii 的索引页面上对用户进行身份验证

我正在使用Yii开发网络。当我使用gii代码生成器创建模块时,它会自动将身份验证添加到该特定模型和Controller的管理页面。但我想在索引页本身上添加用户身份验证。因此,当用户打开网站时,它应该要求登录。我在“view\site\”目录中有index.php,login.php也在同一目录中。我在“\controller”目录中有sitecontroller.php(和往常一样)这是我在Yii框架中的第一个项目。有人建议我如何在网站打开时应用用户身份验证。 最佳答案 只需在SiteController的index()操作顶部添加

php - 如何删除包含某个子字符串的所有 PHP 数组元素?

这个问题在这里已经有了答案:Nativefunctiontofilterarraybyprefix(6个答案)关闭26天前。好吧,我查了一些函数,但我似乎没有找到任何函数,我想过滤一个数组以去除包含一些字符串的特定数组举个例子:$array(1=>'January',2=>'February',3=>'March',);$to_remove="Jan";//orjan||jAn,..nocasesensitivity$strip=somefunction($array,$to_remove);print_r($strip);它应该返回[1]=>February[2]=>March查找数

php - Zend Framework 2 默认模块

在ZF1中,您不必在URL中包含模块;如果未提供,它将默认为...默认模块。这在ZF2中如何实现?我已经使用骨架应用程序启动并运行,但似乎我总是需要包含模块名称,例如/application/controller/action.我想我可以通过创建一个带有两个“占位符”的路线来解决这个问题;Controller和Action,然后将默认模块设置为“应用程序”。然后我会把它放在/config/autoload/global.php(或者可能是/config/application.config.php),这样路由就适用于我的所有应用程序.但是,即使我将路由硬编码为/user/index之类

php - 基于提交数据的 Symfony2 表单验证组

我有一些复杂的表单,有几个子表单,我希望能够根据在主表单中选择的单选按钮分别验证每个子表单。我想通过验证组来实现这一点。注意:我没有data_class模型,我使用数组。这是我简化的表格:classMyTypeextendsAbstractType{publicfunctionbuildForm(FormBuilderInterface$builder,array$options){$builder->add('xxx','text',array('constraints'=>array(newConstraints\NotBlank(),),'validation_groups'=>