PHPで一般的なファイルシステムビューアを作成しましたが、コンテキストの強調表示を追加したいと思います。 Geshiこれにはうまく見えますが、私はコードを強調したい言語で送信する必要があります。文字列からスクリプト言語を決定する
コンテンツや場所によって特定のファイルのスクリプト言語を特定する方法に関する既存の方法はありますか?私はそれが、少なくとも(私はあまりにも非テキストのダウンロードが可能)テキストだ知ることができます
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime_type = @finfo_file($finfo, $full_path);
:
私はからMIMEタイプを持っています。
私は、bang行/ファイル拡張子を解析したり、PHPのような単純なタグを探していると、perl/shell scripts/phpのようなものの良いチャンクを得ることができると考えています。
また、これらのファイルはソースサーバーから直接送られてくるので、パスベースのルールは/etc/httpd/conf.d/*、/ etc/passwdのように動作する可能性があります。
構文に使用する言語をユーザーが上書きできるようにするため、完全な精度は問題にはなりません。私はちょうどこれを最初から書かずに始めるために、低いオーバヘッドで教育された推測を提供したいと思う。
他に1つの警告があります。これらのファイルの中には150MB以上のものがありますので、必要に応じて大きなファイルに対してこの機能をオフにすることもできますが、ファイルの一部だけを読みたいと思います。
なぜファイルの拡張子を見ないのですか? – str