Отредактировать элемент массива

138
21 февраля 2021, 22:40

Есть массив ввида:

Array
(
    [1] => Array
        (
            [0] => 40335
            [1] => 40336
            [2] => 218
            [3] => 217
            [4] => 40337
            [5] => 38301
            [6] => 39051
        )
    [2] => Array
        (
            [0] => 8782
        )
    [3] => Array
        (
            [0] => 11112
        )
    [4] => Array
        (
            [0] => 11123
        )

Нужно сделать, чтобы каждый элемент имел ввид: 40335.jpg, кусок кода:

$getDb = R::getAssoc('SELECT id, producer, parent, title, keyword, art, price, good_chars, balance, img_name , description FROM ' . $data);
$imageId=[];
    foreach($getDb as $key=>$arrDb){
        $imgList= $arrDb['img_name'];
        $imageId[$key] = explode(',', $imgList) ;
    }
    print_r($imageId)

Никак не получается сделать, чтобы сохранились ключи у массива

Answer 1
$imageId = [
    'a' => [11, 12, 13],
    'b' => [21, 22],
];
// array_walk_recursive($imageId, function(&$item){$item .= '.jpg';});
$imageId = array_map(function($list){
    return array_map(function($id){
        return $id.'.jpg';
    }, $list);
}, $imageId);
var_export($imageId);
Answer 2
$imageId=[];
foreach($getDb as $key=>$arrDb){        
    $imageId[$key] = array_map(function($el) { 
        return $el . '.jpg';
    }, explode(",", $arrDb['img_name']));
}
READ ALSO
Создать внешний ключ

Создать внешний ключ

Не понимаю в чём может быть проблемаЕсть две таблицы

147
Как создать MockMultipartFile в нужной директории?

Как создать MockMultipartFile в нужной директории?

Для тестирования контроллеров использую

149
сохранить фото после вызова imageIntent

сохранить фото после вызова imageIntent

Учусь использовать камеру в Android studio, научился запускать камеру и отображать миниатюру, а вот сохранить фото не получается, перепробовал...

113
java. socket - ObjectInputStream

java. socket - ObjectInputStream

Я создаю сервер и клиента на сокете и хочу чтоб они обменивались объектами

104