2015-01-08 4 views
2

루프를 사용하지 않고 배열에 값을 추가 할 수 있는지 궁금합니다.루프를 사용하지 않고 배열에 값 추가

$myArray = array(0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32); //etc... 

을하지만 라인은 매우 오래 루프와 함께 할 똑똑 경우는 예에서 볼 수 있듯이 :

네, 기술적으로 내가 쓸 수 있다는 것을 알고있다. 지금 나는 아직 내가 콜백 또는 다른 어떤 마술 함께 할 수있는 상자의 내부 PHP는 명령 권리가있는 경우 각 번호가 궁금 해서요이 제기 될 것을 알고 있기 때문에

)

올바른 구문이 아니라 아이디어를 얻을 수 있습니다.

$myArray = Array(); 
$myArray[] = insertArray($valueOf{$x};$x;$x>=100;$x=+2); 

참으로,이 또한 함수/클래스로 적용될 수 있다는 것을 알고 있지만, 내가 할 수 있을지 부탁 해요 있다는 BOX :

감사의 마법 RIGHT!

+0

마법을 생산? 코딩 자체가 마술을 만들고 있습니다. – AngularDev

+0

시퀀스가 ​​0,2,4라는 것을 안다면 ..... i 번째 숫자가 2 * (i-1) (1 기반 인덱스)임을 알고 있으므로 배열에 저장할 필요가 없습니다 – sashas

답변

5

당신은

$a = range(0,10,2); 
print_r($a); 

Array 
(
    [0] => 0 
    [1] => 2 
    [2] => 4 
    [3] => 6 
    [4] => 8 
    [5] => 10 
) 
+0

아마도 OP에 대한 예제를 추가하십시오, 그렇지 않으면 좋은 대답입니다 – Rizier123

+1

대단한 사람! 이것은 내가 찾고 있었던 바로 그 것이다 !!! – iprophesy

+0

SUPERB! 웃음으로 스팸 메일을 보내지 마세요. 대문자를 사용하지 마십시오!).)))))))))))))))))))))) – iprophesy

2

예, 당신이 뭔가 array_walk라는이 skip 매개 변수가 지원 range()를 사용하여 특정 범위의 원소를 갖는 배열을 만들 수 있습니다. 이 방법을 사용할 수 있으며, 사용 사례에

array_walk ($myArray, 'addTwo'); 

, 당신은 skip 옵션 range()을 사용할 수 있습니다 또는 :이 같은 함수를 정의 :

function addTwo (&$item, $key) 
{ 
    $item = $item * 2; 
} 

는 그런 기능이 방법을 사용

range()
array_walk (range (0, $max)); 

또는 :

range (0, $max, 2); 
+0

그리고 배열에 요소를 추가하는 방법은 무엇입니까? – vaso123

+0

@lolka_bolka 유스 케이스도 제공합니다! –

+0

예 휠체어를 다시 발명 할 수도 있습니다 – violator667

-1

range() (PHP Manual)으로이 작업을 수행 할 수 있습니다. 배열을 생성하려면 다음을 수행하십시오.

$array = range(0, 32, 2); 

마지막 변수는 배열의 각 항목 사이에 수행 할 단계 수입니다. 그것은 하나의 기본값 만 2로 설정하여 각 숫자가 2

print_r($array); 

에 의해 증가합니다 코딩에

Array 
(
    [0] => 0 
    [1] => 2 
    [2] => 4 
    [3] => 6 
    [4] => 8 
    [5] => 10 
    [6] => 12 
    [7] => 14 
    [8] => 16 
    [9] => 18 
    [10] => 20 
    [11] => 22 
    [12] => 24 
    [13] => 26 
    [14] => 28 
    [15] => 30 
    [16] => 32 
) 
+0

그리고 왜 -1일까요? OP 질문에 대한 답변입니다. – Styphon

관련 문제