Я пытаюсь обработать элемент XML в массиве PHP и просто вернуть его.
Тем не менее, я получаю «преобразование массива в строку» в качестве ошибки в строке 3.
Код PHP
function processPlayers($players) { // paramater is the XML item
$playerGUIDS = array();
$playerGUIDArray = explode(";", $players); // CREATE ARRAY FROM STRING WHICH HAVE A ; DELIMINATER
foreach($playerGUIDArray as $player) {
$playerGUIDS[] = $player;
}
return $playerGUIDS;
}
Элемент XML
<playguid>DC242003;BY523643</playguid>
Я использую WP ALL Import в качестве плагина, поэтому я указываю значение моего настраиваемого поля как
[processPlayers({playguid[1]})]
Посмотреть здесь:
http://www.wpallimport.com/2015/10/wp-all-export-1-1-1-function-editor/
http://www.wpallimport.com/documentation/advanced/execute-php/
Мой идеальный вывод ниже (это форма метаданных в БД WordPress).
a:2:{i:0;s:8:"JC745819";i:1;s:8:"JB705789";}
Вы получили ошибку, потому что WPAllImport пытается вставить это значение в базу данных. Итак, вы должны вернуться в функцию string
значение, а не массив. В вашем случае сериализовано:
function processPlayers($players) {
return serialize(explode(";", $players));
}
Других решений пока нет …