我有以下数值:
$attached_products = "1,4,3";
我想创建一个看起来像这样的数组:
$selected = array(1, 4, 3);
使用我的$attached_products
循环。
答案 0 :(得分:7)
这可以通过循环完成,但有一种更简单的方法。
您可以使用explode
函数 [php docs] 在逗号周围分解字符串。这将为您提供一组数字字符串。您可以使用intval
[php docs] 应用array_map
[php docs] ,将每个字符串转换为整数。
$attached_products = "1,4,3";
$selected_strings = explode(',', $attached_products); # == array('1', '4', '3')
$selected = array_map('intval', $selected_strings); # == array(1, 4, 3)
答案 1 :(得分:4)
您使用explode()
:
$selected = explode(", ", $attached_products);
答案 2 :(得分:2)
如果逗号后面可能有空格,可以使用preg_split()
。
$selected = preg_split(/,\s*/, $attached_products);
或者,您可以使用explode()
,trim()
和array_map()
。
$selected = array_map('trim', explode(',', $attached_products));
如果它们必须是整数,请将它们映射到intval()
。