之前写过几个自动提交到百度,自动提交到神马,现在又写了一个自动提交到搜狗搜索的php文件,之前的几个运行的都比较正常,最近发现搜狗的这个有点问题。
打开已经提交的log发现记录了很多的空行,一个文件1000行有400多的空行。
首先,肯定不是循环有问题,只能是源头处理数据的时候没弄干净。
处理干净就正常了,执行完了看一下log也干净了。
拿了两个文件对比一下,发现8条不一致的数据就有一个是空值。那么直接循环对应的数据,把空值剔除出去就行了。
foreach ($sj as $key => $value){ if(empty($sj[$key])){ unset($sj[$key]); } }
空值产生的原因是因为log每写一行数据之后就输入一个换行符,而解析出来没有处理空值,所以也就把换行符当做一个空数组来读取写入了。