Это сериализованный массив строки метаданных , а s:31
- это длина pa_kapaciteta-rezervoarja-za-go
в этом случае.a:6
- число пар ключей ключ / значение ok для каждого массива (или подмассив) .
Итак, сериализованный массив:
- всегда начинается с
a:
для массива плюс количество пар ключ / значение элементов в нем и :
. - затем
{
для элементов начинаются - , затем
s:
для строки плюс длина строкового элемента (ключ или значение) и :
, плюс строка ключа или значения. - затем
;
для разделения каждого ключа или компонента значения - , затем
}
для элементов конца
Сериализованные массивы , могут быть несериализованными с использованием WordPress maybe_unserialize()
(или unserialize()
в PHP) .
A обычный массив может быть сериализован с использованием WordPress maybe_serialize()
(или serialize()
в PHP) .
Функции Wordpress, такие как add_post_meta () или update_post_meta () всегда будут сериализовать массивы перед сохранением таблицы meta_value
в wp_postmeta
.
То же самое для WooCommerce с некоторым связанным методом WC_Data
с save()
на объектах CRUD и всеми связанными классами хранилищ данных.
с использованием maybe_unserialize()
в вашем сериализованном строковом массиве даст:
$values = array(
'pa_hrup' => array(
'name' => 'pa_hrup',
'value' => '',
'position' => '0',
'is_visible' => '1',
'is_variation' => '0',
'is_taxonomy' => '1'
),
'pa_kapaciteta-rezervoarja-za-go' => array(
'name' => 'pa_kapaciteta-rezervoarja-za-go',
'value' => '',
'position' => '1',
'is_visible' => '1',
'is_variation' => '0',
'is_taxonomy' => '1'
)
);