我在努力尋找與下面的一段PHP代碼的問題:不能用PHP指數誤差,可能多線程問題發現問題
的代碼如下
class WorkerThreads extends Thread
{
private $from_list;
public function __construct($x,$host,$users_email,$pass,$inbox)
{
$this->from_list = array(); # holds the unique froms extracted from headers
}
public function run()
{
# Get Froms
if (preg_match('/From\:\ (.+)/i', $headers, $matches, PREG_OFFSET_CAPTURE)) {
$from = trim(str_ireplace("From: ", "", $matches[0][0]));
if (!array_key_exists($from, $this->from_list)) {
$this->from_list[$from] = 1;
echo "<br/>FROM: ".$from."-".$this->from_list[$from]."<br/><br/>";
}
} else {
echo "NO FROM <br/><rb/>";
}
以下發生錯誤:
Notice: Undefined index: Viva in /var/www/BAMCode/yahoofroms.php on line 198
FROM: Viva-
有問題的行200是
echo "<br/>FROM: ".$from."-".$this->from_list[$from]."<br/><br/>";
似乎有一個陣列的問題
於是找到行號198和檢查哪些變量包含字符串'Viva'? – adeneo
這是行198 echo「
FROM:」。$ from。「 - 」。$ this-> from_list [$ from]。「
」; $ from包含Viva - 數組出於某種原因正在生成錯誤... – Del
因此'$ this-> from_list'沒有任何關鍵字'Viva'然後 – adeneo