0

偶数のインデックス番号で値を除外しようとしていますが、うまくいきません。$date は完全な配列として返されますが、最後のインデックスがありません。これは、explode() を使用しているからですか?

これが私のコードです。

$route = "Dest A:0900:Dest B:0930:Dest C:1000";

$route_array = explode(":", $route);

foreach($route_array as $key){
    if(!($key & 1)){
        $date[] .= $key;
    }
}
return $date;
4

3 に答える 3

1

ループは次のようになります

foreach($route_array as $k=>$key){
    if(($k+1)%2 == 0){
        $date[] = $key;
    }
}
于 2012-11-08T13:54:03.410 に答える
1

これが問題だと思います:

foreach($route_array as $key)

変数を呼び出します$keyが、実際にはその配列要素の値が含まれます。

代わりに、次のことを行う必要があります。

foreach($route_array as $key => $value)

次に、$key が奇数か偶数かをチェックします。$value には、目的地または時間が含まれます。

于 2012-11-08T13:55:52.847 に答える
0

答えてくれてありがとう...

さて、5 分後、ひらめきの瞬間があり、解決策を思いつきました。

$route = "Dest A:0900:Dest B:0930:Dest C:1000";
$route_array = explode(":", $route);

foreach($route_array as $key => $value){
    if(!($key & 1)){
        $date[] .= $route_array[$key];
    }
}
return $date;
于 2012-11-08T14:00:29.237 に答える