-5

私は配列値のようなものを持っています

$array[0]="Test|121";
$array[1]="Test|goo";
$array[2]="Test|example";

これをに変更する必要があります

$array[0]="Test";
$array[1]="121";
$array[2]="goo";
$array[3]="example";

どうすればこれを行うことができるか教えてください。

4

2 に答える 2

1
$array[0]="Test|121";
$array[1]="Test|goo";
$array[2]="Test|example";

$result = explode( '|', array_shift( $array));
foreach( $array as $k => $v) {
    $parts = explode( '|', $v);
    $result[] = array_pop( $parts);
}

var_dump( $result);

これにより、複雑で非常に奇妙な 出力が生成されます。

array(4) {
  [0]=>
  string(4) "Test"
  [1]=>
  string(3) "121"
  [2]=>
  string(3) "goo"
  [3]=>
  string(7) "example"
}
于 2012-06-26T17:31:46.257 に答える
0
function cutStr(&$elem, $key)
{
    $ret = explode('|', $elem);

    if ( $key == 0 )
        $elem = $ret[0];
    else
        $elem = $ret[1];
}

$array[0]="Test|121";
$array[1]="Test|goo";
$array[2]="Test|example";

array_walk($array, 'cutStr');
print_r($array);

これを試して。

于 2012-06-26T17:32:32.630 に答える