奇妙な問題があります。私は codeigniter のような独自のフレームワークを作成しており、CI の「base_url()」と同等の関数を作成しました。これは、私の場合は「http://www.example.com/」のような文字列を返します。私の問題 (これまで聞いたことがない) は、base_url() 関数を使用して css ファイルやその他のナビゲーションへのリンクを作成するときにあります。したがって、私がビューで次のように書くと:
<link rel="stylesheet" type="text/css" href="<?= base_url(); ?>css/style.css" />
実際のリンクは次のとおりです。
<link rel="stylesheet" type="text/css" href="http://www.example.com/css/style.css" />
私の問題は、Chrome と Firefox でソース コードを見ると、関数から返される「文字列」が正しいことです。しかし、マウスをその上に置くと、リンクは代わりに次の URL にリンクします。
http://example.com/%EF%BB%BFhttp://www.example.com/css/style.css
なぜこれを行うのか、誰か説明できますか?
編集:申し訳ありませんが、base_url() のソース コードを忘れてしまいました:
function base_url($url_arguments = array()){
// Require config fil
include(dirname(__FILE__).'/../system/config.php');
// Generate link
$return_url = $config['base_url']; // http://www.example.com/
if(count($url_arguments) > 0){
$return_url .= "?";
foreach($url_arguments as $get => $value){
$return_url .= $get."=".$value.'&';
}
preg_match("/(.+?)&$/i", $return_url, $matches);
$return_url = $matches[1];
}
// Return link
return ($return_url);
}
おまけ: 同僚が VIM で<feff>
、リンクの前に という名前のタグが追加されていることを発見しましたか?