>>327
> mb_strlen($source)
この条件はおかしい。fopenの戻り値はリソースIDでしかないので
文字列の長さを取得できるようなものではない。
ファイルを全部読みきったかどうかは feof() で判定できるぞ。