Изменить значение внутри массива - PullRequest
0 голосов
/ 02 сентября 2018

Я бы хотел изменить значения массива.

В настоящее время мой массив выглядит так:

Array
(
    [0] => Array
        (
            [0] => 12-Multi_select-customfield-retina-ready+Yes
            [1] => 12-Multi_select-customfield-retina-ready+N/A
            [2] => 12-Multi_select-customfield-retina-ready+No
        )

)

Я хочу удалить все перед символом +, поэтому в конце новый массив будет выглядеть так

Array
(
    [0] => Array
        (
            [0] => Yes
            [1] => N/A
            [2] => No
        )

)

Это мой код:

        $new_array = array();

        foreach( $array as $key => $value ) {

            $split = explode("+", $value[0]);               
            $new_array[] = $split[1];   

        }

Надеюсь, что это сработает, но когда я проверяю новый массив, он показывает только одно значение.

Array
(
    [0] => Yes
)   

Любая помощь в правильном направлении меня очень ценится.

Ответы [ 2 ]

0 голосов
/ 02 сентября 2018

Попробуйте эту работу, даже если у вас есть несколько ключей в исходном массиве $original_array[0], $original_array[1] ...:

$original_array[0] = [
    0 => '12-Multi_select-customfield-retina-ready+Yes',
    1 => '12-Multi_select-customfield-retina-ready+N/A',
    2 => '12-Multi_select-customfield-retina-ready+No'
];
print_r($original_array); 

$new_array = [];
foreach ($original_array as $key => $value) {
    foreach ($value as $index => $val) {
        $split = explode("+", $val);
        $new_array[$key][] = $split[1];
    }
}

print_r($new_array);

Пример:
Original array

Array
(
    [0] => Array
        (
            [0] => 12-Multi_select-customfield-retina-ready+Yes
            [1] => 12-Multi_select-customfield-retina-ready+N/A
            [2] => 12-Multi_select-customfield-retina-ready+No
        ),
   [1] => Array
        (
            [0] => 12-Multi_select-customfield-retina-ready+Yes
            [1] => 12-Multi_select-customfield-retina-ready+N/A
            [2] => 12-Multi_select-customfield-retina-ready+No
        )
)  

New Array

Array
(
    [0] => Array
        (
            [0] => Yes
            [1] => N/A
            [2] => No
        ),
    [1] => Array
        (
            [0] => Yes
            [1] => N/A
            [2] => No
        )
)
0 голосов
/ 02 сентября 2018

Пожалуйста, проверьте это:

<code><?php
$array[0][0] = '12-Multi_select-customfield-retina-ready+Yes';
$array[0][1] = '12-Multi_select-customfield-retina-ready+N/A';
$array[0][2] = '112-Multi_select-customfield-retina-ready+No';

echo '<pre>';
print_r($array);

$new_array = array();

foreach( $array[0] as $key => $value ) {

    $split = explode("+", $value);
    $new_array[] = $split[1];

}
print_r($new_array);

echo '
';
...