массивы, переданные в функции - php - PullRequest
0 голосов
/ 27 мая 2018

У меня есть вопрос о передаче многомерных массивов в функции.

У меня есть следующий код (массивы), есть еще несколько массивов.

$product = array();
$product[] = array(
    'Category' => "Smartphone",
    'Seller' => "Apple",
    'Product' => "<img src='Bild_iPhone_8.JPG' alt='iPhone 8' height='130px' />",
    'Price' => 836,
    'Selection' => "Mark1"
);
$product[] = array(
    'Category' => "Smartphone",
    'Seller' => "Samsung",
    'Product' => "<img src='Bild_Galaxy_S8.JPG' alt='Galaxy S8' height='130px' />",
    'Price' => 649,
    'Selection' => "Mark2"
);
$product[] = array(
    'Category' => "Notebook",
    'Seller' => "Apple",
    'Product' => "<img src='Bild_MacBookAir.JPG' alt='MacBook Air' width='130px' />",
    'Price' => 999,
    'Selection' => "Mark3"
);

Я не знаюТеперь точно, как поместить параметры в функцию.Я уже испробовал много возможностей, но ничего не работает.Должна быть возможность делать запросы с помощью форм.

Не могли бы вы мне помочь?Большое спасибо!Привет, Микра

Ответы [ 2 ]

0 голосов
/ 27 мая 2018

Я не понимаю твоей проблемы.Вы можете передать весь многомерный массив в функцию таким же образом, передав одномерный массив.

$products = [];
$products[] = [
    'Category' => "Smartphone",
    'Seller' => "Apple",
    'Product' => "<img src='Bild_iPhone_8.JPG' alt='iPhone 8' height='130px' />",
    'Price' => 836,
    'Selection' => "Mark1"
];
// ... add more products

processProducts($products);

и позже в своем коде

function processProducts($products) {
    foreach ($products as $product) {
        processProduct($product['Category'], $product['Seller'], and so on...);
        // or..
        processProduct($product);
    }
}

function processProduct($category, $seller, ...) {

}

или

function processProduct($product) {
}
0 голосов
/ 27 мая 2018

Используйте Array.push для вставки нескольких элементов в один массив.

$product = array();
$item = array(
    'Category' => "Smartphone",
    'Seller' => "Apple",
    'Product' => "<img src='Bild_iPhone_8.JPG' alt='iPhone 8' height='130px' />",
    'Price' => 836,
    'Selection' => "Mark1"
);

array_push($product,$item);

print_r($product);

и затем вы можете передать основной массив $product любой функции.

calculatePrice($product);

Для доступа к первому элементу используйте $product[0] или foreach для циклического перебора всех элементов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...