0
codeIgniterのモデルからmime.typesファイルにアクセスしようとしています。codeIgniter - モデルからテキストファイルにアクセスする方法
function get_mime_type($filename, $mimePath = '../../assets'){
$fileext = substr(strrchr($filename, '.'), 1);
if (empty($fileext)) return (false);
$regex = "/^([\w\+\-\.\/]+)\s+(\w+\s)*($fileext\s)/i";
$lines = file("$mimePath/mime.types");
foreach($lines as $line){
if (substr($line, 0, 1) == '#') continue; // skip comments
$line = rtrim($line) . " ";
if (!preg_match($regex, $line, $matches)) continue; // no match to the extension
return ($matches[1]);
}
return (false); // no match at all
}
私はそれを呼び出すとき、私はすでに、次のことを試してみた:
$this->get_mime_type($filename, $mimePath = '../../assets');
$this->get_mime_type($filename, $mimePath = '/zenoir/assets');
$this->get_mime_type($filename, $mimePath = 'http://localhost:8080/zenoir/assets/mime.types');
しかし、運。 mime.typesファイルには、資産フォルダにあり、モデルがinzenoir /アプリケーション/モデルである
たエラー:
A PHPエラーが
重要度を発生しました:
警告メッセージ:ファイル(../../ assets/mime.types)[function.file]:ストリームを開くことに失敗しました:そのようなファイルまたはディレクトリなし
ファイル名:models/files.php
行番号:46
どのようにしてベースパスからトラバースできますか? – user225269
@ user225269、CI 2の 'BASEPATH'リンクを'/system/'ディレクトリにリンクしている場合。あなたの場合の例として 'BASEPATH。../assets"を実行してください。 – Starx