ドメイン取った&WordPress復活させました

クイックインストールって方法でWordPress復活させてみました。
作るのは簡単だったのに記事と写真の移行が手間取った(´・ω・`)

所で、旧ドメインが消失しました。
大体予想できると思いますが…、お金払い忘れました(´・ω・`)
普通だったら期限が切れる一ヶ月前位からメールが来るのですが、全て迷惑メールフォルダに入ってました(´・ω・`)

某人に相談したら「ちょっとすると売りに出されるよ」と言われたのでほぼ毎日バリュードメインでsekkiを検索してましたw
(マジで一日事位に検索してましたw)
2ヶ月くらい経ったある日知り合いに、「なんか広告になってるけど?」
って言われダッシュでアクセスすると

ってなっていましたw

この取られた日もちゃんと検索してたんですが、なんかタイミングが悪かった様です(´・ω・`)

このドメインってそんなに価値が有ったのかな(´・ω・`)

このドメイン(sekki.org)は多分一時的な物です。
sekki.netは、2013年1月15日に作られて、2014年1月15日に期限が切れるそうです。

もし、来年ドメインが売ってたら買い直したいな(´・ω・`)

みなさんもドメインの更新は忘れないように!

PHPでタイトル取得してみた

参考サイト:PHPでWEBページのタイトルを抜き出すサンプル
      http://creazy.net/2008/05/php_get_page_title_sample.html

こんな感じで書いて動かしてみる

echo "PageTitle:". getPageTitle("http://www.google.co.jp/");

function getPageTitle($url) {
    $html = file_get_contents($url);
    $html = mb_convert_encoding($html, "UTF-8", "auto" );
    if (preg_match( "/<title>(.*?)</title>/i", $html, $matches)) {
        return $matches[1];
    } else {
        return "タイトル取れなかった";
    }
}

実行すると、一応結果は表示される…が!
Warning: mb_convert_encoding() [function.mb-convert-encoding]: Unable to detect character encoding
って出る、解決するには、

$html = mb_convert_encoding($html, mb_internal_encoding());

と、”auto”を消すだけだった。

これで、”一応取”得はできた
次に今のコードで、
http://headlines.yahoo.co.jp/hl?a=20110321-00000046-jij-soci
ここの名前を取ろうとすると…

見事に文字化けする!
(ちなみに、”auto” 付けてもダメでした)
勝手にエンコードの種類を特定して勝手にしてくれるのかと思ってた…

もしかして:このページが EUC-JP で出来てるから?

取りあえず、ゴニョゴニョしてみる

結論こんなコードになった。

echo "PageTitle:". getPageTitle("http://headlines.yahoo.co.jp/hl?a=20110321-00000046-jij-soci");

function getPageTitle( $url ) {
    $html = file_get_contents($url);
    $enc_format =  "JIS, eucjp-win, sjis-win, UTF-8";
    $html = mb_convert_encoding($html, "UTF-8", $enc_format);
    if ( preg_match( "/<title>(.*?)</title>/i", $html, $matches) ) {
        return $matches[1];
    } else {
        return "タイトル取れなかった";
    }
}

“auto”じゃなく、形式を指定してあげればいいみたい

ちなみに、なぜ、eucjp-win とか付けるのか?
参考サイト:SJISじゃなくてSJIS-win、EUC-JPじゃなくてeucJP-winを使おう
      http://pentan.info/php/sjiswin_eucjpwin.html

以上終わりです。

っと思ったけど、まだ続きがある!
世の中にはこんなサイトもある、

( ゚д゚)…

?!

改行が…

まぁ、正規表現変えればいいだけなんだけどねw

preg_match( "/<title>(.*?)</title>/is", $html, $matches)

/なんとか/i が文字列の大文字・小文字を区別しない
/なんとか/is が大文字・小文字を区別せず、1行とみなして調べる

こんな感じ

結論!

$br = "<br />n";
$url = "http://headlines.yahoo.co.jp/hl?a=20110321-00000046-jij-soci";

    echo "PageTitle:". getPageTitle($url). $br;

    function getPageTitle($url){
        $html = file_get_contents($url);

        $enc_format =  "JIS, eucjp-win, sjis-win, UTF-8";
        $enc_html = mb_convert_encoding($html, "UTF-8", $enc_format);
        if(preg_match( "/<title>(.*?)</title>/is", $enc_html, $matches)){
            //echo mb_detect_encoding($html, $enc_format). "<br />n";
            return $matches[1];
        } else {
            return false;
        }
    }

以上です、お疲れ様でした。

追伸:改行が入るかも…