나는 다음과 같은 값을 내 $attached_products
와 루프를 사용루프를 사용하여 문자열에서 배열을 만드는 방법은 무엇입니까?
$selected = array(1, 4, 3);
:
$attached_products = "1,4,3";
내가처럼 보이는 배열을 만들고 싶어.
나는 다음과 같은 값을 내 $attached_products
와 루프를 사용루프를 사용하여 문자열에서 배열을 만드는 방법은 무엇입니까?
$selected = array(1, 4, 3);
:
$attached_products = "1,4,3";
내가처럼 보이는 배열을 만들고 싶어.
이것은 루프를 사용하여 수행 할 수 있지만 더 간단한 방법이 있습니다.
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)
당신은 그것을 위해 explode()
를 사용하거나 쉼표 뒤에 공백이 없을 수도 있습니다 경우 preg_split()
을 사용할 수
$selected = explode(", ", $attached_products);
.
$selected = preg_split(/,\s*/, $attached_products);
또는 당신 explode()
, trim()
및 array_map()
를 사용할 수 있습니다.
$selected = array_map('trim', explode(',', $attached_products));
정수인 경우 으로 매핑하십시오.
@ Jeremy Banks, hmmm은 어레이 (1, 4, 3)와 동일한 출력입니까? – Emkey
'intval '을 따옴표로 묶어야합니다. – alex
@Emkey : 내 값은 정수가 아니라 문자열입니다. 나는 그것을 고쳤다. 이제 그들은 동일합니다. –