$ron="1,2,3";
$oc=12;
$ronS=explode(',', $ron);
foreach($ronS as $rone) {
$res[]= $rone;
}
我希望输出如下
'1', '2', '3', '1', '2', '3', '1', '2', '3','1', '2', '3'
任何想法的朋友..
答案 0 :(得分:4)
使用这个:
$val = $arr[$i % 4];
数字4是数组计数。
答案 1 :(得分:4)
$arr = // somehow get your array
$max = 10; // number of printed values
for ($i = 0; $i < $max; $i++) {
$val = $arr[$i % count($arr)]; // get your value from array
// do whatever you want with your value
}
答案 2 :(得分:0)
试试这个
$arr = array('one', 'two', 'three', 'four');
//$val = null;
$j=0;
for ($i = 0; $i < 10; $i++) {
$val = $arr[$j];
$j++;
echo $val;
if($j==3)$j=0;
}
答案 3 :(得分:0)
不使用循环的最简单方法是使用implode
函数,如下所示:
$array = ['one', 'two', 'three', 'four'];
echo implode (', ', $array);
使用for
循环和函数的更复杂的方法:
$array = ['one', 'two', 'three', 'four'];
function arrayToString(array $array){
$length = count($array);
$last = $length - 1;
$str = '';
for ($i = 0; $i < $length; $i++){
$str .= $array[$i];
if ($i != $last){
$str .= ', ';
}
}
return $str;
}
echo arrayToString($array);
可以通过添加substr
函数的使用来简化此方法:
function arrayToString(array $array){
$length = count($array);
$str = '';
for ($i = 0; $i < $length; $i++){
$str .= "$array[$i], ";
}
return substr($str, 0, -2);
}
使用foreach
周期和substr
函数的另一种方法:
$array = ['one', 'two', 'three', 'four'];
function arrayToString(array $array){
$str = '';
foreach ($array as $value){
$str .= "$value, ";
}
return substr($str, 0, -2);
}
echo arrayToString($array);