如何在PHP中将数组转换为字符串?

sha*_*tac 34 php arrays

对于像下面这样的数组; 获取数组值并将它们存储为以逗号分隔的字符串的最佳方法是什么?

Array ( [0] => 33160,
        [1] => 33280,
        [2] => 33180,
        [3] => 33163,
        [4] => 33181,
        [5] => 33164,
        [6] => 33162,
        [7] => 33179,
        [8] => 33154,
        [9] => 33008,
        [10] => 33009,
        [11] => 33161,
        [12] => 33261,
        [13] => 33269,
        [14] => 33169,
        [15] => 33022,
        [16] => 33141,
        [17] => 33168,
        [18] => 33020,
        [19] => 33023,
        [20] => 33019,
        [21] => 33153,
        [22] => 33238,
        [23] => 33138,
        [24] => 33167,
        [25] => 33082,) 
Run Code Online (Sandbox Code Playgroud)

Tee*_*kin 62

我会把它变成CSV格式,就像这样:

$string_version = implode(',', $original_array)
Run Code Online (Sandbox Code Playgroud)

您可以通过执行以下操作将其转回:

$destination_array = explode(',', $string_version)
Run Code Online (Sandbox Code Playgroud)

  • 如果您希望它可供人类阅读,您可能需要在逗号后添加一个空格。``、`` (2认同)
  • 这是有效的,除非您的数组中有一个数组,此时您将“数组”作为字符串。 (2认同)

pix*_*ine 31

我会把它变成一个json对象,如果你使用一个关联数组,还有保留键的好处:

 $stringRepresentation= json_encode($arr);
Run Code Online (Sandbox Code Playgroud)

  • 此外,如果您正在使用嵌套数组,这将比“内爆”更有用。 (2认同)

Roc*_*mat 9

使用implode(),您可以将数组转换为字符串.

$str = implode(',', $array); // 33160,33280,33180,...
Run Code Online (Sandbox Code Playgroud)


Isa*_*and 5

serialize()unserialize()在php对象和字符串表示形式之间转换。