我正在使用数组foreach来获取值。
foreach($movie as $key=>$value) {
if($key == 0) {
echo $_SESSION['movie'] = $value; //output1
} else {
echo $_SESSION['movie'] = ", ".$value;
}
}
echo $value; //output2
当它为output1回显时:
MOVIE1,电影2,MOVIE3
输出2时:
MOVIE3
我想在 foreach 之外使用变量$ value但是我无法获得 output1 结果,并且只获得 output2 结果。
我想要的输出2:
MOVIE1,电影2,MOVIE3
答案 0 :(得分:5)
如果您正在迭代$movie
数组,只是为了以逗号分隔的字符串打印电影,那么您就不需要了。
echo implode(',', $movie);
答案 1 :(得分:0)
将您的值分配给foreach内的
array
。
foreach($movie as $key=>$value){
$moviename[]=$value;
}
答案 2 :(得分:0)
您是否尝试将字符串存储在$ _SESSION ['movie']中?看起来你有点困惑自己。
foreach($movie as $key=>$value){
if($key === 0){
$_SESSION['movie'] = $value;
}else{
$_SESSION['movie'] .= ", ".$value;
}
}
echo $_SESSION['movie']; //output2
将导致
剧场1,电影2,MOVIE3
你可以使用内爆。 https://secure.php.net/manual/en/function.implode.php例如:
$movie = array(0 => 'Movie1', 1 => 'Movie2', 2 => 'Movie3');
$movie_str = implode(',', $movie);
echo movie_str;
将导致
剧场1,电影2,MOVIE3