我需要从序列化字符串中获取值,以便在某些统计信息中使用它。我已经在其他页面中获得了这些信息来显示一些内容,但我不知道为什么我现在有这个问题。
DB有一个名为wj_db7_forms
(我正在使用WordPress插件将输入记录到表单上)。
我需要的信息栏在form_value
.
清洗柱的内容时,有一部分带有s:4:"city";s:6:"boston"
.
我想得到所有的表单,在每一个表单上,都要得到city
. 该值可以有任何长度,因为它是一个开放输入。
我尝试了很多方法,但都没有成功。
我会犯这样的错误
分析错误:语法错误,意外的“city”(T\\u字符串)
或者根本不获取错误,但变量似乎为空,等等。
我试过了unserialize
, array_pop
, print_r
, echo
, 每件事
<?php
global $wpdb;
$table_name = $wpdb->prefix.\'db7_forms\';
$results = $wpdb->get_results( "SELECT form_value FROM $table_name WHERE form_post_id = 6062", OBJECT );
$form_data = unserialize( $results[0]->form_value );
print_r($form_data);
?>
使用该代码,我可以从表单中获取所有信息,但我可以获取所有信息,包括来自其他列的信息。。。而且只有一种形式。我需要从“wj\\u db7\\u forms”表中所有具有“form\\u post\\u id”的表单中获取。
其中一个表单的“form\\u value”中的内容如下:https://pastebin.com/e6LzJzLS
$form\\u数据[“city”]现在可以使用了。但我需要得到所有形式的值。它只为我返回一个。