檢查原始碼, 發現原來是自己寫程式習慣太差, 沒有處理好萬一找不到陣列索引問題 :
$RS1=search("z0050", "trade_date", $RS[$i]["trade_date"]);
$z0050=$RS1[0]["close"];
$RS1=search("z0056", "trade_date", $RS[$i]["trade_date"]);
$z0056=$RS1[0]["close"];
$RS1=null;
這裡沒有判斷陣列 $RS1 到底索引 0 存不存在就賦值, 實在很糟糕. 正確寫法如下 :
isset($RS1[0])?$z0050=$RS1[0]["close"]:$z0050=null;
$RS1=search("z0056", "trade_date", $RS[$i]["trade_date"]);
isset($RS1[0])?$z0056=$RS1[0]["close"]:$z0056=null;
先用 isset() 判斷後再賦值就不會有此問題了, 參考 :
沒有留言 :
張貼留言