2016-06-10 11 views
1

나는 내 문제에 대한 해결책을 찾지 못했습니다. 다음 코드를 사용하여 폴더의 파일을 검사합니다. 나는 단지 601 개의 엔트리를 본다. foreach, select 또는 scandir에 제한이 있습니까? 조건이 만족을 얻을 때foreach의 한도는 무엇입니까?

for($k=2;$k<count($alledateien);$k++){ 
$dateiinfo = pathinfo($ordner."/".$alledateien[$k]); 
// .. Your Code 
} 

제한에서

<?php 
$ordner = "../picture/"; 
$alledateien = scandir($ordner); 
sort($alledateien); 
foreach ($alledateien as $datei) { 
$dateiinfo = pathinfo($ordner."/".$datei); 
$size = ceil(filesize($ordner."/".$datei)/1024); 
if ($datei != "." && $datei != ".." && $datei != "_notes") { 
?> 
<option value="<?php echo $dateiinfo['filename'] . "." . $dateiinfo['extension']; ?>"><?php echo $dateiinfo['filename']; ?> (<?php echo $dateiinfo['extension']; ?> | <?php echo $size ; ?>kb)</option> 
<?php 
}}; 
?> 
+0

'foreach'는 여러분이 통과 한 것의 크기에 따라 제한된 모든 것을 통과합니다. 제어 구조 ['for'] (http://php.net/manual/en/control-structures.for.php)에서 한도를 설정할 수 있습니다. –

+0

'glob'을 사용합니다 –

+0

안녕하세요. 빠른 답변 주셔서 감사합니다. 나는 한계를 wouldnt한다. 나는 모든 출품작을 볼 것이다. 하지만 나는 단지 599 만 보았다. –

답변

1

시작이다. 루프에 따라 어떻게 설정 하느냐에 따라 다릅니다.

당신이 줄 경우 print_r($alledateien) 당신이 두 개의 별도의 파일 ...을 보게됩니다 사람들은 current directoryparent directory이다. 무시하려면 2에서 루프를 시작하십시오.

+0

자, 무슨 뜻인지 알 겠어. 하지만 어떻게 내 코드로 그것을 깨닫게 될까요? –

+0

나는 똑같은 일을 몇 시간 뒤로했다. :) 그 일을 제거하라. 당신의 카운트는 601입니까? 그렇지 않으면 내 코드를 편집하여 해당 코드를 제거합니다. 그리고 .. 배열 –

+0

하하 좋은 :) 나는 정렬 일을 제거했지만 변경하지 않고. 예, 맞습니다 - 601 항목 후에 중지됩니다. –