我试图使用WPDB从数据库中获取数据,但我一直在研究如何解密数据,例如。
数据存储为:a:2:{i:0;s:2:“92”;i:1;s:2:“71”}
我想要92&;71由于这是我的帖子ID,如何使用WPDB从DB获取该部分?
到目前为止,我的代码是:
$crosssells = $wpdb->get_results(
"SELECT *
FROM $wpdb->postmeta
WHERE _crosssell_ids != \'\'
"
);
该表仅在将数据放入帖子时创建,因此我需要检查该表是否存在,然后获取帖子id
最合适的回答,由SO网友:Andrew Bartel 整理而成
它只是序列化的,在WordPress中,您可以运行maybe_unserialize 并返回变量/数组。
$crosssells = $wpdb->get_results(
"SELECT *
FROM $wpdb->postmeta
WHERE _crosssell_ids <> \'\'
"
);
$array = maybe_unserialize($crosssells);
然而,有一些内置函数可以根据元信息检索帖子。您可以使用
get_posts 检索帖子和
get_post_meta 从特定的post-id检索元信息。最好从直接的数据库交互中抽象出来,以利用WordPress的内置缓存、安全性等。