2014-05-24 5 views
0

문자열을 쉼표로 구분 된 목록으로 분해하려고합니다. 이전에이 작업을 수행했지만 지금은 작동하지 않습니다. 그냥 참조문자열에서 내 .Explode()가 작동하지 않는 이유

, 내가 다 2009, 7, 146, 277.00, Company 6 그래서 내가 아는 echo $members[6]; 반환 에코라는 라인은 내가 $members로 사용할 문자열의 정확한 크기를 반환 $arrlength를 호출 $members

나는 또한 알고

에 제대로 저장되고있다.

그래서 나는 올바른 데이터를 가지고 그것을 올바르게 아직가 echo $members[6]; 문 내 의 index.php에 인쇄 유일한 선을 포맷하고 나는 매우 긴 스크롤 막대를 갖고 있기 때문에 나는 또한 너무 그 echo "<br><br>"; 인쇄 추측하고있다.

도움을 주시면 감사하겠습니다. 코드가 폭발 할 어떤 요소 모르는

explode(",", $members[$i]) 

를하고 있던 경우에 경고/오류가 당신이 그에게 것 켜져 :

<html> 
<head> 
</head> 
<body> 

<?php 
$str_data = file_get_contents("file.json"); 
$data = json_decode($str_data,true); 

foreach ($data as $key => $value) 
{ 
    foreach ($value as $k => $v) 
    { 
     $t = ""; 
     foreach ($v as $kk => $vv) 
     { 
      $t = $t . ", " . $vv;   
     } 
     $members[] = substr($t, 2); //cuts out initial comma + space  
    } 
} 
$arrlength=count($members); 

echo $members[6]; // returns 2009, 7, 146, 277.00, Company 6 

for ($i=0; $i<$arrlength; $i++) 
{ 
    list($year, $rank, $revenue, $profit, $company) = explode(",", $members[i]); 
    $year = trim($year); 
    $rank = trim($rank); 
    $revenue = trim($revenue); 
    $profit = trim($profit); 
    $company = trim($company); 

    echo $year; 
    echo $rank; 
    echo $revenue; 
    echo $profit; 
    echo $company; 
    echo "<br><br>"; 
    } 
?> 
</body> 
</html> 
+1

당신이 일하는 언어를 잊지 마세요;) – Jonast92

+0

php.ini (http://www.php.net/manual/en/errorfunc.configuration)에서'error_reporting'을 켜야합니다. php # ini.error-reporting). 만약 당신이 그 질문을하지 않았 으면 – Ben

답변

2

당신이 $을 놓친 때문에 작동하지 않습니다

explode(",", $members[i]); 

가되어야한다

당신은 turn on errors해야
explode(",", $members[$i]); 

.

+0

* facepalm * 고마워요! – Austin

1

당신은 폭발 기능에 $ 누락 :)

코드가 예상대로 작동한다고 추가하자마자.

+0

* facepalm * 나는 그것이 단순해야만한다는 것을 알았습니다. 하하 – Austin

관련 문제