我有一个post数组,我想只破坏它的一个子部分。例如,我有:
'value1' => 'a'
'value2' => 'b'
'value3' => 'c'
'name1' => 'Fred'
'name2' => 'Mary'
'name3' => 'James'
'value4' => 'd'
我将在其余变量中获得任意数量的名称。从那些,我想要一个这些名称的连接列表,用逗号插入。因此对于上面的数组,输出应为:
Fred,Mary,James
但对于任何给定的帖子,可能有任何数字(嗯,不是任何)的名称,所有这些都是 name#,其中#< / em>是一个序号。
最简单的方法是什么?
答案 0 :(得分:2)
一个简单的循环可以解决这个问题:
$names = array();
foreach($arr as $k => $v) {
if(strpos(strtolower($k), 'name') === 0) {
$names[] = $v;
}
}
echo implode(",", $names);
答案 1 :(得分:0)
如果names表示长度超过1个字符的字符串,则可以执行以下操作:
foreach($array as $val)
if(strlen($val) > 1)
$result[] = $val;
echo implode(',', $result);
如果名称表示键以名称开头的值,则可以执行以下操作:
foreach($array as $key => $val)
if(substr($key,0,4) == 'name')
$result[] = $val;
echo implode(',', $result);
答案 2 :(得分:0)
我会把名字放到一个post数组中.. php处理得很好....
<input type="text" name="names[1]" value="" />
然后您可以通过
访问它$_POST['names'][1]
继续......
foreach($_POST['names'] as $name => $value)
{
echo $value . ", ";
}