【问题标题】:Convert Wordpress post meta to PHP array将 Wordpress 帖子元转换为 PHP 数组
【发布时间】:2016-02-16 11:12:08
【问题描述】:

我有一个类似 MySql 的 Wordpress 帖子元数据

[{"field":"Email:1","title":"email","explanation_text":"","explanation_text_location":"","html_styling":"","text_to_display":"","show_title_field":"","pdf_file":"","pdf_file_button_styling":"","pdf_file_button_text":""}]

我需要将其转换为 PHP 数组。我使用以下代码将其作为数组。

$wpaf_field_title = maybe_unserialize(get_post_meta(52, '__wpaf_field_title', true));
print_r(json_encode($wpaf_field_title));

但它返回我

"[{\"field\":\"Email:1\",\"title\":\"email\",\"explanation_text\":\"\",\"explanation_text_location\":\"\",\"html_styling\":\"\",\"text_to_display\":\"\",\"show_title_field\":\"\",\"pdf_file\":\"\",\"pdf_file_button_styling\":\"\",\"pdf_file_button_text\":\"\"}]" 

【问题讨论】:

  • 使用 json_decode 代替 json_encode
  • @user3384985数据不是序列化的类型json_encode你需要使用json_decode

标签: php mysql arrays wordpress


【解决方案1】:

如 cmets 中所说,您必须使用 json_decode() 函数:

$json = '[{"field":"Email:1","title":"email","explanation_text":"","explanation_text_location":"","html_styling":"","text_to_display":"","show_title_field":"","pdf_file":"","pdf_file_button_styling":"","pdf_file_button_text":""}]';
$data = json_decode( $json );
var_dump( $data );

然后你得到:

array(1) {
  [0]=>
  object(stdClass)#1 (10) {
    ["field"]=>
    string(7) "Email:1"
    ["title"]=>
    string(5) "email"
    ["explanation_text"]=>
    string(0) ""
    ["explanation_text_location"]=>
    string(0) ""
    ["html_styling"]=>
    string(0) ""
    ["text_to_display"]=>
    string(0) ""
    ["show_title_field"]=>
    string(0) ""
    ["pdf_file"]=>
    string(0) ""
    ["pdf_file_button_styling"]=>
    string(0) ""
    ["pdf_file_button_text"]=>
    string(0) ""
  }
}

【讨论】:

    猜你喜欢
    • 2015-03-15
    • 2015-07-16
    • 1970-01-01
    • 2021-10-05
    • 1970-01-01
    • 1970-01-01
    • 2021-04-21
    • 1970-01-01
    • 2015-07-14
    相关资源
    最近更新 更多