Php 对动态数组键求值
我有一个表单,允许用户添加他们休闲的信息。他们可以通过jQuery在我的表单中添加位置,因此当接收数据时,我可能有1个位置或10个位置。每个位置都有一些属性,如电话、地址等。在我的表单中,输入的名称被附加上_1、_2等,以显示其新的数据集。这是顺利的工作,我只是似乎找不到这些键时,循环通过$后数组Php 对动态数组键求值,php,arrays,Php,Arrays,我有一个表单,允许用户添加他们休闲的信息。他们可以通过jQuery在我的表单中添加位置,因此当接收数据时,我可能有1个位置或10个位置。每个位置都有一些属性,如电话、地址等。在我的表单中,输入的名称被附加上_1、_2等,以显示其新的数据集。这是顺利的工作,我只是似乎找不到这些键时,循环通过$后数组 private function array_pluck($arr,$text) { foreach($arr as $key => $item) {
private function array_pluck($arr,$text)
{
foreach($arr as $key => $item)
{
if(stripos($key,$text) != 0)
{
$found[] = $item;
}
}
return $found;
}
据我所知,如果我的数组有一些键“office\u branch\u phone\u 1,office\u branch\u phone\u 2”,我应该能够在$text参数中输入“office\u branch”,它将吐出名称中带有“office\u branch”的任何键。然而,这不起作用,我有点困惑 Since将返回索引(返回的是基于0的索引)!=0不正确
if (stripos($key,$text) !== false)
这是检查它的正确方法。试试看
编辑
注意的用法==代码>而不是=代码>因为如果不严格地检查,0往往被视为错误
==代码>将检查实际类型,因此0是有效的返回值。只需要一点额外的信息首先,通过print\r($\u POST)
或通过调试器确保$\u POST在表单提交中看起来与您期望的一样。我的第一个猜测是你的$arr没有关联性。你能做一个var_转储($arr)并查看$u POST[]的内容吗?您还应该使用stripos($key,$text)!==错。