2013-03-19 5 views
-2

이 배열을 어떻게 조작 할 수 있는지 알아야합니다. 여기 내 예입니다이 배열을 조작하는 방법

$color = "red,yellow,green,black"; 
$stock = "10,20,30,40"; 

사용자가 노란색 선택하고 (5)의 양, 컬러 노란색 항목의 다음 주식 (15)가

내 질문은, 노란 색으로 재고 항목을 변경하는 방법이 될되어지면 이 같은 :

$color = "red,yellow,green,black"; 
$stock = "10,15,30,40"; 

내가 생각하는 무엇, 나는 색이 노란색 배열 위치를 얻을 수 있으며 1을 반환하고 배열 위치가 1입니다하지만 어떻게 그렇게하는 생각이없는 경우 재고를 업데이트합니다 . 아무도 나에게 제안이나 해결책을 줄 수 있습니까?

답변

1

다음은 예입니다. 사용자에게 맞게 수정할 수 있습니다. 조작하는 경우가 될 것이다> 값 쌍 - 이것은 당신의 문자열이 같은 크기의 배열로 변환 할 및 순서는

// transform $color to array using comma as delimiter and return key position for yellow 
$position = array_search('yellow', explode(',', $color)); 
// transform $stock to array 
$stock = explode(',', $stock); 
// change value at the same position 
$stock[$position] = 15; 
// put it back into string 
$stock = implode(',', $stock); 
echo $stock; 

당신은 또한 키를 사용하여 하나의 배열에 데이터를 저장할 수있는 올바른 것이라고 가정 하찮은.

+0

나는 방금 이것을 얻었다 : ", 15". "10,15,30,40"을 반납하는 방법? thx –

+0

위에 게시 한 변수를 사용하여'10,15,30,40'을 반환합니다. –

+0

thx marko, 실수를합니다. 나는 주식으로 주식을 쓴다. 그래서 거짓으로 돌아 간다. Thx, 그것은 나를 위해 일하는거야 :) –

1

이들은 배열이 아니라 문자열입니다. 먼저 arrays에 익숙해 져야합니다.

explode을 사용하여 문자열을 배열로 변환 할 수 있습니다.

+0

... 배열을'implode' 문자열로 돌려 놓습니다. – cHao

관련 문제