这是一个serialized 一串Here\'s a good description 它是什么:
PHP数组、对象或其他复杂的数据结构不能在运行的PHP脚本之外传输、存储或以其他方式使用。如果您想将如此复杂的数据结构保持在一次脚本运行之外,那么需要对其进行序列化。这只是意味着将结构放入一个“较低的公分母”,可以由PHP以外的事物处理,如数据库、文本文件、套接字。标准的PHP函数serialize就是一种表达这种东西的格式,它将数据结构序列化为PHP特有的字符串表示形式,并可以使用unserialize将其反转为PHP对象。不过还有许多其他格式,如JSON或XML。
因此,如果您有一个PHP数组、对象等,请说
$array = array(
\'key value\' => array(
\'more info\' => array(1,2,3)
),
\'another key\' => array(
\'and so on\' => \'<span>so on</span>\'
)
);
通过PHP,您可以使用
serialize()
和
unserialize()
把它变成一根绳子。您可以使用以下脚本查看自己:
$storeArray = serialize($array);
echo "<pre>".print_r($storeArray,true)."</pre>";
$restore = unserialize($storeArray);
echo "<pre>".print_r($restore,true)."</pre>";
UPDATE: 正如@TomJNowell提醒的那样(谢谢!):
如果您将对象或数组传递到API中进行保存,则WP会动态自动序列化和反序列化
使用Wordpress,例如使用Options API,将数组传递到add_option()
将数组另存为_options
桌子使用检索值get_option()
将自动为您取消对其的分级,并且获得的值将与您传入的原始$数组中添加的值相同:
add_option(\'my_array\', $array);
$my_array = get_option(\'my_array\');
echo "<pre>".print_r($my_array,true)."<pre>";