2012-10-17 5 views
1

무엇이 더 호소력 있고 자원을 더 친숙하게 할 것입니까?성능이 더 좋은 것은 무엇입니까, 여러 개의 배열 또는 하나의 배열에 여러 개의 배열이 들어 있습니까?

사용

$array1=Array(); 
$array2=Array(); 
$array3=Array(); 

나 :

$arr=Array(); 
$arr[] = Array(); 
$arr[] = Array(); 
$arr[] = Array(); 

그리고 무엇 유지 보수가 필요한 경우 코드에서 처리하는 것이 좋습니다?

약 2800 개의 다른 배열을 처리해야하므로 성능이 매우 중요합니다.

+0

웹 사이트의 병목 현상은 데이터베이스 쿼리입니다. 위와 같은 유형의 문제는 아닙니다. 수백만 번의 반복에도 불구하고 거의 차이가 없습니다. – itachi

답변

7

유지 보수성은 일반적으로 당신이 당신이 그들을 액세스하는 배열에 저장하고 어떻게하는지에 따라 달라집니다 ...

논리적 그룹/세트가있는 경우 그리고 당신은 배열 ($array1, $array2, 등등 ...)을 통해 반복하고 나서 중첩 연관 배열을 만들고 싶습니다.

$Config = array(
    'Database' => array(
     'Host'=>"10.0.0.1", 
     'user'=>"root" 
    ), 
    'API' => array(
     'Endpoint'=>"http://example.com/" 
    ), 
); 

가 완전히 다른 경우는, 다음은 배열의 배열이 메모리에 소폭 가벼운 경우가 있습니다 만, 그 차이가 그렇게 될 것입니다 PHP와 함께, 솔직히 정말 판단 호출

입니다 작은 경우 성능 병목 현상이 나타날 때까지는 시간을 낭비 할 필요가 없습니다. 배열을 선언하는 방법과는 다른 것으로 의심됩니다.

3

1000 가지 배열을 사용할 경우 배열을 모두 사용하는 것이 좋을 것입니다. 따라서 배열 배열을 사용하는 것이 더 좋으며 배열을 포함하는 1000 개의 변수를 사용하는 것이 좋습니다.

+0

처리 성능은 어떻습니까? 약 2800 개의 배열을 처리 할 때 그 메서드간에 성능 차이가 크지 않습니까? – Paedow

+2

성능에 눈에 띄는 차이가 없으므로 걱정하지 마십시오. – bogatyrjov

+0

유지 관리 생각하기, 배열 대신 객체 사용을 고려할 수도 있습니다. 다시 말하지만, 성능 차이는 없습니다. 데이터를 사용할 계획입니다. – bogatyrjov

1

두 번째 변수는 여러 변수를 만들지 않으므로 약간 "좋을"것입니다.

개인적으로 나는 현재 상황에서 가장 의미가있는 것을 신경 쓰지 않을 것입니다. 성능에 중점을 두어야하는 강력한 이유가 없으면 스타일은 종종 성능보다 중요합니다. (이 경우에는 다른 해결책은 PHP가 더 좋을 수도있다.)

관련 문제