a:1:{s:13:"administrator";b:1;}
나는 이것을 분해하고 일종의 배열로 변환하고 싶다.어떻게 WordPress 문자열 meta_key 값을 더 간단한 배열로 변환 할 수 있습니까?
a:1:{s:13:"administrator";b:1;}
나는 이것을 분해하고 일종의 배열로 변환하고 싶다.어떻게 WordPress 문자열 meta_key 값을 더 간단한 배열로 변환 할 수 있습니까?
더 나은 출력을 위해 maybe_unserialize('a:1:{s:13:"administrator";b:1;}')
wordpress의 기능을 사용할 수 있습니다. serialize 문자열을 전달하면 배열이 반환됩니다.
아래의 문자열은 실제로 직렬화 된 형식의 배열을 나타냅니다. 여기
a:1:{s:13:"administrator";s:1:"1";}
: 는 1 번의 요소 들로 배열 수단 : 13 수단 문자열 및에
Array
{
"administrator" => "1"
}
뒤에 문자열의 길이 케이스
$mydata = a:1:{s:13:"administrator";s:1:"1";};
$mydata = unserialize($mydata);
echo $mydata['administrator in'][0];
테이블에 있으면 unserialize() 함수를 사용하여 코드에서 사용할 배열로 반환 할 수 있습니다.
내장 된 WordPress 기능을 사용하면 해당 레벨의 데이터를 조작 할 필요가 없습니다. here
/*
* Get user's role
*
* If $user parameter is not provided, returns the current user's role.
* Only returns the user's first role, even if they have more than one.
* Returns false on failure.
*
* @param mixed $user User ID or object.
* @return string|bool The User's role, or false on failure.
*/
function km_get_user_role($user = null) {
$user = $user ? new WP_User($user) : wp_get_current_user();
return $user->roles ? $user->roles[0] : false;
}
시도에서 촬영은 get_user_meta에 의해 그것을 얻을하고 그것은 당신에게 배열을 반환하며, unserielize()를 사용하지 않을 경우, 그게 다야. –
이것은'serialize()'함수에 전달 된 데이터를 PHP가 출력하는 형식입니다. Dipak이 말했듯이, 값을'unserialize()'에 전달함으로써 배열로 되돌릴 수 있습니다. 이 가치는 어디서 났습니까? 일반적으로 값을 수동으로 unserialize 할 필요는 없습니다. 플랫폼은 API를 제공해야합니다. –
[데이터 병합 해제가 작동하지 않음]의 가능한 복제본 (https://stackoverflow.com/questions/16281156/unserializing-data-doesnt-work) – mickmackusa