2016-11-25 39 views
0

我保存這樣遍歷會議尋找特定值

會議::把( 'image.hash。' $ imageHash,$ imageHash)會話值;

後來我想檢查是image.hash所有會話。*,因爲我不知道在以後的$ imageHash

的價值我想這

如果( Session :: has('image.hash。*'))

但是當然它不起作用。我如何通過這些會話值循環,如果我不知道最後一部分

image.hash.djn6ago

image.hash.fJtbru

image.hash.ai12de

我也試過

$session = Session::all(); 

forearch ($session as $value) { 
    if (strpos($value, 'image.hash') !== false) { 
     echo $value; 
    } 
} 

但是當我運行該代碼時,我得到了這

strpos()預計參數1是字符串數組給定

編輯:

通過所有感興趣的鑰匙管理循環,但現在另一個問題。

我做

DD($會議);

找出什麼鍵和值在那裏舉行會議,並發現我的圖像鍵指向數組的字符串,而不是像我想象中,這裏是他們如何看待

"image-uploads/2016/11/25/15/twest-test" => array:1 [▼ 
    "jpg" => "uploads/2016/11/25/15/twest-test.jpg" 
    ] 
    "image-uploads/2016/11/25/15/moviefone" => array:1 [▼ 
    "png" => "uploads/2016/11/25/15/moviefone.png" 
    ] 

這是怎麼了我創建它們

Session :: put('image - '。$ folder。'/'。$ name,$ folder。'/'。$ name);

我現在有問題可以訪問價值信息,因爲它在一個數組中,並且這個數組鍵值似乎是jpg,png,gif,bmp等,這取決於上傳的圖像。我不明白如何添加此密鑰,因爲我沒有將數組添加到會話密鑰而是字符串。

任何想法?

+0

加上'的var_dump($值);'bevor你彷彿看到了什麼在$值) – Andre

+0

更新我的問題,需要額外的幫助,請看看 –

回答

1

我認爲你的$ value包含數組。請在foreach中調試或回顯gettype($ value)並查看輸出。

$session = Session::all(); 
    forearch ($session as $value) { 
     echo gettype($value) 
     if (strpos($value, 'image.hash') !== false) { 
      echo $value; 
     } 
    } 
+0

你是對的,我已經解決它像這樣$ session as $ key => $ value並且在鍵值上做strpos而不是value,現在它可以工作 –

+0

更新了我的問題,需要額外的幫助,請看一看 –

1

對於編輯問:請調試作爲foreach循環DD($值)。一旦循環執行,它將顯示一次$ value的輸出,然後在這裏共享輸出。謝謝。

$session = Session::all(); 
    forearch ($session as $value) { 
     echo dd($value) 
     if (strpos($value, 'image.hash') !== false) { 
      echo $value; 
     } 
    }