PHPからCSVファイルを出力仕様とした際に、以下のようなエラーメッセージがExcelで表示されました。

開こうとしているファイル ‘***.***’ の形式は ファイル拡張子が示す形式と異なります。

Excel は ‘xxxx.csv’が SYLK ファイルであることを確認しましたが、読み込むことができません。ファイルにエラーが含まれるか、SYLKファイル形式でない可能性があります。異なるファイル形式でそのファイルを開くには、[OK]をクリックしてください。

エラーメッセージを無視して開くと通常通り開けるのですが、気持ち悪いので調べてみると、CSVの先頭が「ID」のCSVファイルを開くとこのようなエラーメッセージが表示されるようです。

NGパターン

ID,NAME,PRICE

ID123,456,789
はエラーメッセージが表示されます。
Excel はテキスト ファイルの先頭の文字列が ID の場合、ファイルを SYLK 形式として認識するため、このような現象が起こるようです。

参考

【Excel】SYLK ファイルであることを確認しましたが、読み込むことができません at softelメモ.