Я извлекаю все базы данных в phpmyadmin в server1 и вызываю это $ array1. Я также извлекаю все базы данных в phpmyadmin в server2 и вызываю это $ array2.Как сравнить массивы и обратную разницу php
Теперь я хочу, чтобы сравнить два массива и возвращает разницу, но я получаю сообщение об ошибке «массив для преобразования строки» Вот мой код:
$db = new MysqliDb ('');
$db->setHost('server1');
$array1=$db->rawQuery('SHOW DATABASES');
$db = new MysqliDb ('');
$db->setHost('server2');
$array2=$db->rawQuery('SHOW DATABASES');
$result = array_diff($array1, $array2);
echo'<pre>';
print_r($result);
echo'</pre>';
Где вы получаете эта ошибка? –
Просьба предоставить образец вывода 'var_dump ($ array1)'. – Furgas
Скорее всего, это потому, что '$ array1' и/или' $ array2' являются многомерными. 'array_diff' работает только с одномерными массивами, отличая все значения в массивах, которые сравниваются со строками. См. [Примечания] (http://php.net/manual/en/function.array-diff.php#refsect1-function.array-diff-notes) на странице руководства 'array_diff'. – Plenka