如何序列化单个值?

问题描述 投票:0回答:1

我需要使用 php 序列化一个值,该值可以是单个字符串,也可以是逗号分隔的列表。 (我正在将用户数据电子表格导入 WordPress 自定义字段。)

该字段的值可能类似于以下任意一个:

'cats'
'cats, dogs, birds'

如果它只是一个逗号分隔的列表,我会这样做:

function list_to_serialized( $value ){

    // Split the list at the commas.
    $value = explode(',', $value);

    // Return the serialized list.
    return serialize( $value );

}

但是这个函数也需要适用于单个值。我是否需要先在所有单个值的末尾插入逗号,然后分解,然后序列化?或者有没有更有效的方法?

php arrays wordpress serialization
1个回答
0
投票

您可以使用 preg_split,通过匹配逗号和换行符的正则表达式进行分割:

preg_split('/[,\r?\n]/', $value, -1, PREG_SPLIT_NO_EMPTY);
© www.soinside.com 2019 - 2024. All rights reserved.