我試圖過濾一些日誌,就像我需要它們,並試圖使其動態。我有一些域名,我試圖從中過濾一些東西,並且它們都像我想要的那樣工作 - 但現在我更改了域名,現在我的代碼不再工作了。它說一個變量沒有被定義。爲什麼PHP告訴我這個變量沒有定義?
$sp_bots = shell_exec("grep bot | awk '{print $12}' /var/www/laravel/logs/vhosts/zahnmedizinisches-fachzentrum-berlin.de.log");
$array_sp_bots = explode("\n", $sp_bots);
$all_bots = array();
foreach($array_sp_bots as $bots){
if(strpos($bots, "bot")){
$all_bots[] = $bots;
}
}
# count values of strings in array
if (!empty($all_bots)) {
$bots = array_count_values($all_bots);
arsort($bots);
$mostOccuring = max(array_count_values($all_bots));
$bot_keys = array_keys($bots);
#number of total bots
$count_bots = count($all_bots);
}
,並在我的回報:
return view('/domains/data', [
'count_bots' => $count_bots,
'bot_keys' => $bot_keys,
'mostOccuring' => $mostOccuring,
]);
但在我回報所有三個變量是不確定的..任何人都知道這是爲什麼?
什麼的$更改域後sp_bots輸出? – Sabari
定義$ all_bots,如$ all_bots = array();上面的foreach – Surace
因爲你從來沒有定義'$ all_bots',只是假設當你',它已經存在$ all_bots [] = $機器人;' –