我想把多个数组的每一个可能匹配的项列出来,我单独写死倒是可以写出来,但如果数组是可添加的,就不知道怎么写了,比如下面再加一个数组$d,不知道我描述清楚了没有
$a=array('a','b','c');
$b=array('A','B','C');
$c=array('1','2','3');
for($i=0;$i<count($a);$i++)
{
for($j=0;$j<count($b);$j++)
{
for($z=0;$z<count($c);$z++)
{
echo "{$a[$i]}-{$b[$j]}-$c[$z]<br>";
}
}
}
$a=array('a','b','c');
$b=array('A','B','C');
$c=array('1','2','3');
for($i=0;$i<count($a);$i++)
{
for($j=0;$j<count($b);$j++)
{
for($z=0;$z<count($c);$z++)
{
echo "{$a[$i]}-{$b[$j]}-$c[$z]<br>";
}
}
}
解决方案 »
类似问题 »
- 插入到数据库中的数据乱码问题
- fsockopen() unix:///tmp/memcache.socket Connection refused 报错
- 为什么alert执行了,页面跳转了,但是后面的PHP程序还是执行了?
- 如何通过程序判定php运行所需版本啊?
- 求助:windows7下配php出错
- php错误信息有时候不能显示
- 网站之路要模糊吗?
- 数据库查询错误!
- cookie的转向问题
- 英文时间的问题
- PHP中怎样转换十六进制的 数据???
- ? 千分问题之二:详情请看内容(谁能答对送一千分,up者有分,up三次以上者没分,回答问题除外) (xizi2008 )
- 一个批量上传.支持断点续传的思路.
- PHP socket代码怎么写 才能接受客户端websocket发过来的数据
- 新手求一个简单的正则表达式,大大们帮帮忙.谢谢
- php发mail比较慢,请问如何可以服务器发送mail的同时,页面转到其它页呢?
- 招聘有两年以上工作经验的php程序员
a-A-1
a-A-2
a-A-3
a-B-1
a-B-2
a-B-3
a-C-1
a-C-2
a-C-3
b-A-1
b-A-2
b-A-3
b-B-1
b-B-2
b-B-3
b-C-1
b-C-2
b-C-3
c-A-1
c-A-2
c-A-3
c-B-1
c-B-2
c-B-3
c-C-1
c-C-2
c-C-3
$arr[] = array('a','b','c');
$arr[] = array('A','B','C');
$arr[] = array('1','2','3');
$arr[] = array('4','5','6');$s = $arr;
$r = $s[0];
for($i = 1,$j = count($s);$i<$j;$i++)
{
$n = array();
foreach($r as $v)
{
foreach($s[$i] as $v2)
{
$n[] = $v.'-'.$v2;
}
$r = $n;
}
}
foreach($r as $v)
{
$new[] = $v;
}
echo "<pre/>";
print_r($new);
$a[0]=array('a','b','c');
$a[1]=array('A','B','C');
$a[2]=array('1','2','3');$cmd1="";
$cmd2="";
for($i=0;$i<count($a);$i++)
{
$cmd1.='for($z['.$i.']=0;$z['.$i.']<count($a['.$i.']);$z['.$i.']++)';
$cmd2.=($cmd2?'-':'').'{$a['.$i.'][$z['.$i.']]}';
}
eval("{$cmd1} echo \"$cmd2<br>\";");
$arr[] = array('A','B','C');
$arr[] = array('1','2','3');$s = $arr;
$r = $s[0];
for($i = 1,$j = count($s);$i<$j;$i++)
{
$n = array();
foreach($r as $v)
{
foreach($s[$i] as $v2)
{
$n[] = $v.'-'.$v2;
}
$r = $n;
}
}
echo "<pre/>";
print_r($r);
感觉没什么好的办法
在使用这个的时候:
for($i=0;$i <count($a);$i++)
写成:
$temp = count($a);
for($i=0;$i <$temp;$i++)
效率应该好一点,防止每次都进行count操作