我试图将json数组保存到数据库中,并创建了以下类
defined(\'ABSPATH\') || exit;
class Theme_FAQ {
public function __construct() {
add_action(\'admin_menu\', array($this, \'theme_faq_admin_menu\'));
}
public function theme_faq_admin_menu() {
add_menu_page(\'FAQ\', "FAQ", \'manage_options\', \'theme-faq\', array($this, \'theme_faq_page\'), \'dashicons-excerpt-view\', 58);
}
function theme_faq_page() {
wp_enqueue_script(\'jquery\');
wp_enqueue_script(\'jquery-ui-sortable\');
wp_enqueue_script(\'jquery-effects-slide\');
$faq = get_option(\'theme_faq\');
if (isset($_POST[\'theme-faq-save\'])) {
if ($faq !== $_POST[\'theme_faq\']) {
$faq = $_POST[\'theme_faq\'];
update_option(\'theme_faq\', $faq);
}
}
include(\'html-theme-faq.php\');
}
}
和html主题常见问题解答。php我有一个表单,它有一个名为“theme\\u faq”的输入,在测试中我使用这个值
[{"title":"Title 1","content":"Content 1"},{"title":"Title 2","content":"Content 2"}]
但是,如果我添加一个var\\u转储($\\u POST),我会得到以下输出
array(2) { ["theme_faq"]=> string(101) "[{\\"title\\":\\"Title 1\\",\\"content\\":\\"Content 1\\"},{\\"title\\":\\"Title 2\\",\\"content\\":\\"Content 2\\"}]" ["theme-faq-save"]=> string(19) "Save" }
theme\\u faq值将“改为\\”,如何防止出现这种情况?还是颠倒过来?
我已经找到了一些解决方法,通过使用[]更改输入名称来生成数组,但在使用“或”时仍然会更改。。。