2016-04-28 56 views
0

我有兩個數組,其中的圖像位置數組。當我爲每個循環使用第一個循環時,我從位置獲取圖像。如果我使用其他語句,那麼這個sript不起作用。
我使用下面的數組作爲$ image_name。使用兩個每個循環與其他語句

任何想法。

$cam_list1 = array(1,2,3,4,5,6,7,8); 
$cam_list2 = array(9,10,11,12,13,14,15,16); 


foreach ($cam_list1 as $cam) { 
    $timestamp = strtotime($displayEntryDatetime); 
    $cam_delta = 14; 
    $timestamp = $timestamp - $cam_delta; 
    for ($i = 0; $i < $cam_delta+2; $i++) { 
     $cdate = date("d_m_Y* H_i_s", $timestamp); 
     $image_name = "/xampp/htdocs" . $damage_topdir1. $cam . "/Cam*" . $cam . "*-" .$cdate . "*"; 
     foreach (glob($image_name) as $filename) { 
      if (file_exists($filename)) { 
       $fs_image = str_replace("/xampp/htdocs", "", $filename); 
       print "<h3>Camera $cam</h3>";   
       print "<a href=\"$fs_image\" target=\"_new\"><img src=\"$fs_image\" height=240 width=320 /></a>\n"; 
      } 
     } 
     $timestamp++; 
    } 
} 
else 

    foreach ($cam_list2 as $cam) 
    { 
     $timestamp = strtotime($displayEntryDatetime); 
     $cam_delta = 14; 
     $timestamp = $timestamp - $cam_delta; 
     for ($i = 0; $i < $cam_delta+2; $i++) { 
      $cdate = date("d_m_Y* H_i_s", $timestamp); 
      $image_name = "/xampp/htdocs" . $damage_topdir2. $cam . "/Cam*" . $cam . "*-" .$cdate . "*"; 
      foreach (glob($image_name) as $filename) { 
       if (file_exists($filename)) { 
        $fs_image = str_replace("/xampp/htdocs", "", $filename); 
        print "<h3>Camera $cam</h3>";   
        print "<a href=\"$fs_image\" target=\"_new\"><img src=\"$fs_image\" height=240 width=320 /></a>\n"; 
       } 
      } 
      $timestamp++; 
     } 
    } 
+1

什麼是您的輸入,預期輸出和實際輸出? – Halcyon

+3

'else'與'if'語句一起使用。你有這個嗎? –

+1

該腳本不工作,因爲其他與foreach是語法錯誤... –

回答

0

您可以使用ELSE聲明,如果你之前使用IF語句只。 PHP致命錯誤將顯示在您的案例中。

我不清楚你想要做什麼,但是如果你想檢查你的列表中是否有圖像,你可以使用一個函數在cam_list中執行foreach過程。

function getImages($list) { 
    $inList = false; 

    foreach ($list as $cam) { 
     $timestamp = strtotime($displayEntryDatetime); 
     $cam_delta = 14; 
     $timestamp = $timestamp - $cam_delta; 
     for ($i = 0; $i < $cam_delta+2; $i++) { 
      $cdate = date("d_m_Y* H_i_s", $timestamp); 
      $image_name = "/xampp/htdocs" . $damage_topdir1. $cam . "/Cam*" . $cam . "*-" .$cdate . "*"; 
      foreach (glob($image_name) as $filename) { 
       if (file_exists($filename)) { 
        $inList = true; 
        $fs_image = str_replace("/xampp/htdocs", "", $filename); 
        print "<h3>Camera $cam</h3>";   
        print "<a href=\"$fs_image\" target=\"_new\"><img src=\"$fs_image\" height=240 width=320 /></a>\n"; 
       } 
      } 
      $timestamp++; 
     } 
    } 

    return ($inList) ? true : false; 
} 

隨着的if/else後可以得到在cam_list1或cam_list2否則圖像。

$cam_list1 = array(1,2,3,4,5,6,7,8); 
$cam_list2 = array(9,10,11,12,13,14,15,16); 

if (!getImages($cam_list1)) { 
    getImages($cam_list2); 
}