2012-01-26 3 views
1

나는 다차원 배열을 가지고 있습니다. 아래 코드는 하나의 전체 열을 출력합니다.기준에 따라 출력 배열

<?php  
for ($row = 1; $row <$arrCSV; $row++) { 
    echo ''.$arrCSV[$row]['6'].''; 
} 
?> 

나는 문 만이 가지고있는 행을 표시하는 "경우" "CAT"에 둘 것입니다 방법 "$ arrCSV [$ 행] [ '4']"

내가 확실하지 않다 IF 진술입니까?

+0

이 CSV 파일에 저에게 당신의 첫 번째 행 (열)을 적어주세요 $ arrCSV에있는 모든 항목을 확인 가정합니다? – sathishkumar

+1

정수가 그 배열보다 작습니까? 그것은 흥미로운 개념입니다 ... – DaveRandom

+0

@ M42 - 미안하지만, 여전히 배우고 있습니다. – Arthor

답변

1

strpos() (아래 설명에 따라 편집을 할) 최고의 특정 문자열이있는 경우를 결정하는 기능입니다 , 혼동이 적고 읽기 쉽습니다.

+0

위대한 작품입니다. 아무 것도 없으면 메시지를 표시하기 위해이 문장에 ELSE를 넣을 수 있습니까? 또는 그 복잡한 경우 – Arthor

+1

@Arthor 일치하는 행이 없으면 마지막에 하나의 메시지를 의미합니까? 또는 출력되는 각 행에 대한 메시지를 표시 하시겠습니까? – DaveRandom

+0

일치하는 행이없는 경우를 의미합니다. – Arthor

1
for ($row = 1; $row < $arrCSV; $row++) { 
    if (strpos($arrCSV[$row]['4'], 'CAT') !== false) { 
     echo $arrCSV[$row]['6']; 
    } 
} 

이 정보는 찾고 계신 정보입니다. 내가 그 질문을 이해하는지 모르겠다.

또한 $row < $arrCSV이지만 $arrCSV은 정수가 아닌 배열 객체입니다. 제공된 코드가 제대로 작동하는지 확신합니까? 내가 이것 때문에 특정 작업에 대한 foreachfor 루프를 변경 한

$foundOneMatchingRow = FALSE; 
foreach ($arrCSV as $row) { 
    if (strpos($row['4'], 'CAT') !== FALSE) { 
    $foundOneMatchingRow = TRUE; 
    echo $row['6']; 
    } 
} 
if (!$foundOneMatchingRow) { 
    echo "I couldn't find a matching row!": 
} 

:

+1

그가'for ($ row = 1, $ l = count ($ arrCSV); $ row <$ l; $ row ++)를 의미한다고 가정합니다. – xdazz

+0

나는 그렇게 생각합니다. –

+0

옙 :) 대단한 !!!! – Arthor

1
foreach ($arrCSV as $row) { 
    if (strpos($row[4], 'CAT') !== false) { 
     print_r($row); 
    } 
} 
1

여기 코드를 시도해보십시오.

$result = array(); 
foreach($arrCSV as $key => $value) { 
    if($value['4'] == 'CAT') {   
    $result[] = $value; 
    } 
} 
print_r($result); 
+0

이것은 모두 다 내었지만 생각이났습니다. 감사합니다 – Arthor

1
foreach(array_filter($arrCSV,function($row) { return (strpos($row[4],'CAT') !== FALSE); }) as $row) { 
    echo ''.$row['6'].''; 
} 

+0

@ Mark Baker 우선 모두 감사합니다. DW에 코드를 넣었습니다. 구문 오류가 있습니다. 나는 보였지만 실종 된 것을 볼 수는 없습니다. – Arthor

+1

실행중인 PHP의 버전에 따라 다름 :이 코드는 PHP 5.3.0 이상에서만 사용할 수있는 익명의 함수 (또는 "클로저")를 사용합니다 ... PHP의 적절한 버전을 실행하는 경우 구문은 무엇입니까? 오류? –

+0

DW에는 상태가 표시되지 않습니다. 그것은 단지 빨간 줄이 있습니다. 그러나 나는 확신 할 5.3이 없다. 고맙습니다 – Arthor

관련 문제