2016-04-17 4 views
-3

Ich habe versucht, PHP zu verwenden, um einen elementaren Video-Viewer von meinem Server zu machen, aber es scheiterte im Allgemeinen aufgrund der Tatsache, dass ich ein Neuling in PHP war. Ich habe diesen Fehler immer erhalten - E_WARNING Error in Datei * bei Zeile **: Array_combine() erwartet Parameter 2 Array, Null gegeben E_WARNING Fehler in Datei * bei Zeile ** (gleiche Zeile): Ungültige Argument geliefert for foreach()PHP - array_combine()

Und nichts wird als Ergebnis angezeigt.

Was kann ich tun?

BTW, hier ist der Quellcode

$dir = $_GET["path"]; 
    $files = scandir($dir); 
    $thelists=NULL; 

    foreach (array_combine($files, $thelists) as $file => $thelist) { 
      if ($file != "." || $file != ".." || pathinfo($file, PATHINFO_E$ 
        $thelist .= '<a href=browse.php?path=.$_GET["path"].'.$$ 
      } 
      else if ($file == "..") { 
        $thelist .= '<a href="javascript:history.back(1);">Back$ 
      } 
      else { 
        echo "<a href=http://twentyone.ml/cloud/video.php?file=$ 
      } 
    } 
?> 
<body> 
<h1>Directory listing for <?php echo $dir; ?></h1> 
<p><?php print_r($thelists); ?></p> 

Antwort

0

entfernt $ thelists durch den folgenden Code hinzufügen müssen:

(Ein Teil davon ... nur ein bisschen foreach())

foreach ($files as $file) { 
     //$file_info = new finfo_open(FILEINFO_MIME_TYPE); 
     $mime_type = mime_content_type($dir.'/'.$file);//$file_info->buffer(file_get_contents($dir.'/'.$file)); 
     if ($file != "." || $file != ".." || strpos($mime_type,'video') !== false) { 
      echo '<a href=browse.php?path='.$_GET["path"].'/'.$file.'>'.$file.'</a><br />'; 
     } 

Yay!

1

Zunächst einmal kann ich nicht nachvollziehen, warum Sie Null in Array kombiniert werden?

$thelists ist null in Array kombinieren Sie Array statt null

ändern $thelists=NULL;-$thelists=array();

+0

Sorry, aber ich habe das schon versucht ... Hat nicht funktioniert, also habe ich versucht Null und sogar das hat nicht funktioniert. –

+0

Fehler: array_combine(): Beide Parameter sollten die gleiche Anzahl von Elementen –

+0

haben Versuchen Sie mit array_merge @iCore –