$ wpdb -> get_col возвращает дублированные массивы - PullRequest
0 голосов
/ 10 декабря 2018

Я пытаюсь получить все значения для всех сеансов в столбце «session_value» в таблице БД «wp_woocommerce_sessions».

Следующий код выполняет работу, но по какой-то причине дублирует результат 6раз, давая мне 6 массивов с точно таким же содержимым.

global $wpdb;
$wooSessions = $wpdb->get_col( "SELECT session_value FROM {$wpdb->prefix}woocommerce_sessions" );
$wooCookies = implode(" ", $wooSessions);

Я читаю о OBJECT_K в документации, которая в теории отбрасывает дублированные ключи, но я не знаю, как его применить.Если я добавлю OBJECT_K в круглые скобки get_col, код перестанет работать.

Это вывод var_dump ($ wooSessions);дает мне:

array(1) { [0]=> string(4366) "a:12:{s:4:"cart";s:2084:"a:2:{s:32:"1b4cfd194c804d1ad422a350aa2a0145…"}

array(1) { [0]=> string(4366) "a:12:{s:4:"cart";s:2084:"a:2:{s:32:"1b4cfd194c804d1ad422a350aa2a0145…"}

array(1) { [0]=> string(4366) "a:12:{s:4:"cart";s:2084:"a:2:{s:32:"1b4cfd194c804d1ad422a350aa2a0145…"}

array(1) { [0]=> string(4366) "a:12:{s:4:"cart";s:2084:"a:2:{s:32:"1b4cfd194c804d1ad422a350aa2a0145…"}

array(1) { [0]=> string(4366) "a:12:{s:4:"cart";s:2084:"a:2:{s:32:"1b4cfd194c804d1ad422a350aa2a0145…"}

array(1) { [0]=> string(4366) "a:12:{s:4:"cart";s:2084:"a:2:{s:32:"1b4cfd194c804d1ad422a350aa2a0145…"}

Вот еще один пример использования session_id и session_key:

global $wpdb;
$wooSessions = $wpdb->get_results( "SELECT DISTINCT session_id, session_key FROM {$wpdb->prefix}woocommerce_sessions GROUP BY session_key" );

, который возвращает следующее:

Array ( [0] => stdClass Object ( [session_id] => 2149 [session_key] => 76f0552cff4af84e1963815c1fc4a14d ) ) 
Array ( [0] => stdClass Object ( [session_id] => 2149 [session_key] => 76f0552cff4af84e1963815c1fc4a14d ) ) 
Array ( [0] => stdClass Object ( [session_id] => 2149 [session_key] => 76f0552cff4af84e1963815c1fc4a14d ) ) 
Array ( [0] => stdClass Object ( [session_id] => 2149 [session_key] => 76f0552cff4af84e1963815c1fc4a14d ) ) 
Array ( [0] => stdClass Object ( [session_id] => 2149 [session_key] => 76f0552cff4af84e1963815c1fc4a14d ) ) 
Array ( [0] => stdClass Object ( [session_id] => 2149 [session_key] => 76f0552cff4af84e1963815c1fc4a14d ) )

Вот еще один пример выбора session_id иgroup by session_id:

global $wpdb;
$wooSessions = $wpdb->get_results( "SELECT session_id FROM {$wpdb->prefix}woocommerce_sessions GROUP BY session_id" );

Это результат:

Array ( [0] => stdClass Object ( [session_id] => 2149 ) )
Array ( [0] => stdClass Object ( [session_id] => 2149 ) )
Array ( [0] => stdClass Object ( [session_id] => 2149 ) )
Array ( [0] => stdClass Object ( [session_id] => 2149 ) )
Array ( [0] => stdClass Object ( [session_id] => 2149 ) )
Array ( [0] => stdClass Object ( [session_id] => 2149 ) )

Есть идеи, которые могут указать мне правильное направление?Заранее спасибо.

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