Я запрашиваю серию таблиц, чтобы распечатать их, и я хочу напечатать все ключи каждой таблицы, даже если значения пусты, но определенный набор ключей, которые одинаковы для каждой таблицы, не должен печататься.
Мой запрос и выборка результата в массиве для одной таблицы:
$stmt = $db_conn->prepare("SELECT * FROM table;");
$stmt->execute();
$array = $stmt->fetchAll(PDO::FETCH_ASSOC);
$stmt->closeCursor();
var_export($array);
возвращается:
array ( 0 => array ( 'a' => '1', 'b' => '2018-12-21', 'c' => '', 'd' => '', ), )
Я подготовил список плохих ключей в массиве:
var_export($bad_keys);
возвращается:
array ( 0 => array ( 'a' => '1', 'b' => '2019-01-05', ), )
Для каждой таблицы я хочу исключить неверные ключи {a, b} из результата запроса в $array
с помощью array_diff_key()
:
$array_new = array_diff_key($array, $bad_keys);
var_dump($array_new);
возвращает пустое значение:
array(0) { }
.
$array_new
должны иметь ключи {'c', 'd'}, но не имеют. Я не вижу ошибки в моем коде. Пожалуйста, помогите.