PHPのソースデータは、shift-jis では記述しないほうが良い理由

多くの言語では文字コードにより、バイト数の取扱いが変わるようです。


参照ページ
第8回■主要言語の文字エンコーディングの対応状況を押さえる | 日経 xTECH(クロステック)

利用者の使い方が正しくない場合も,ぜい弱性が混入することがあり、
PHPでは「5C問題」という問題があるようです。
これは、ソースがshift-jisエンコードの場合に、バックスラッシュを表現する
「0x5C」を含む文字が間違って解釈されてしま問題とのことです。

文字列リテラルを終端するダブルクオートが「バックスラッシュに食われ」,
リテラルが閉じられていない状態となり,PHPの文法エラーになる。


この対処法は、URL中でも説明されているように2つありますが
shift-jisエンコーディングを避ける方法が一般的のようです。

PHPソースを記述する際の文字エンコーディングとしてShift_JISを避け,
EUC-JPかUTF-8を使用する


もし、開発環境で文字コードの制約がありshift-jisで対応する場合、上記の点を注意ですね。