Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix the following when attempting to import a CSV from CLI: ``` There is an error in app/code/Macopedia/CategoryImporter/Console/Command/CategoriesCommand.php at line: 159 array_key_exists(): Argument macopedia#2 ($array) must be of type array, null given#0 app/code/Macopedia/CategoryImporter/Console/Command/CategoriesCommand.php(159): array_key_exists() macopedia#1 vendor/symfony/console/Command/Command.php(298): Macopedia\CategoryImporter\Console\Command\CategoriesCommand->execute() macopedia#2 vendor/magento/framework/Interception/Interceptor.php(58): Symfony\Component\Console\Command\Command->run() macopedia#3 vendor/magento/framework/Interception/Interceptor.php(138): Macopedia\CategoryImporter\Console\Command\CategoriesCommand\Interceptor->___callParent() macopedia#4 vendor/magento/framework/Interception/Interceptor.php(153): Macopedia\CategoryImporter\Console\Command\CategoriesCommand\Interceptor->Magento\Framework\Interception\{closure}() macopedia#5 generated/code/Macopedia/CategoryImporter/Console/Command/CategoriesCommand/Interceptor.php(23): Macopedia\CategoryImporter\Console\Command\CategoriesCommand\Interceptor->___callPlugins() macopedia#6 vendor/symfony/console/Application.php(1040): Macopedia\CategoryImporter\Console\Command\CategoriesCommand\Interceptor->run() macopedia#7 vendor/symfony/console/Application.php(301): Symfony\Component\Console\Application->doRunCommand() macopedia#8 vendor/magento/framework/Console/Cli.php(116): Symfony\Component\Console\Application->doRun() macopedia#9 vendor/symfony/console/Application.php(171): Magento\Framework\Console\Cli->doRun() macopedia#10 bin/magento(23): Symfony\Component\Console\Application->run() macopedia#11 {main} ``` According to ChatGPT :) The error is due to the `array_key_exists` function being called on a null array. Specifically, the issue is in the `mapHeaders` method on line 159. This method is supposed to map headers from the file to row keys, but there seems to be an issue with the way it's implemented. To fix this issue, we can modify the `mapHeaders` method to handle the case where `$item` is not found in the `$headers` array. In this version, I replaced the nested loop with a call to `in_array` to check if the current `$item` exists in the `$headers` array. If it does, the corresponding key is set in the `$headersMap` array.
- Loading branch information