PHP-帮助我从数据库中的序列化值数组中获取值

PHP-帮助我从数据库中的序列化值数组中获取值,php,mysql,arrays,serialization,Php,Mysql,Arrays,Serialization,这是我尝试使用PHP获取数据时在数据库中序列化的值 $mylink = $wpdb->get_row( "SELECT * FROM wp_hlsq_signups WHERE user_email = 'john.r3@domain.com'" ); $metaData= $mylink->meta; echo "<pre> $metaData</pre>"; 我只想在php中显示John Ratina这是first\u name和last\u name,

这是我尝试使用PHP获取数据时在数据库中序列化的值

$mylink = $wpdb->get_row( "SELECT * FROM wp_hlsq_signups WHERE user_email = 'john.r3@domain.com'" );
$metaData= $mylink->meta;
echo "<pre> $metaData</pre>";

我只想在php中显示John Ratina这是
first\u name
last\u name
,这是怎么可能的?

您的数据没有正确序列化。它是畸形的。你一开始是怎么序列化的?例如,
s:8:“John”
John没有
8个字符。诸如此类。我问得对,可能是字符串没有正确地带到问题正确,我不知道s:8是什么,名字是8个字符,我只是把这8个字符的名字改为John,只是为了隐藏我的名字。这样行吗?”原因基于序列化的数据,它应该返回一个通知,如:notice:unserialize():offset x处的错误虽然这段代码可能会回答这个问题,但最好包含一些上下文,解释它是如何工作的以及何时使用它。从长远来看,只使用代码的答案是没有用的。
a:6:{
s:10:"first_name";s:4:"John";s:9:"last_name";s:6:"Ratina";s:9:"user_pass";s:34:"$P$B3EtpszNVkYJseassseaa2$swas";s:10:"user_email";s:14:"john.r3@domain.com";s:10:"user_login";s:6:"john-r";s:4:"role";s:10:"subscriber";
}
$metaData= $mylink->meta;
$valData= unserialize($metaData);
echo $valData['first_name'];