[実験]エクセルのシフト表をGoogleカレンダーに反映[してみる]その2

とありあえず、準備としてgoogleの方の設定

google cloud platformで新しいプロジェクト作成
APIとサービスに行って、左メニューのライブラリからgoogle calendar apiを選び有効にする
認証情報から、サービスアカウントキーを選んで作サービスアカウントを作成する。jsonファイルのダウンロード。
続きを読む

スポンサーリンク

[メモ]アニメーションgifのチェック[php]

おひさしぶりです。

タイトルの通り、チェック対象のファイルがアニメーションgifかそうじゃないかのチェックプログラムを・・・

で、とほほさんのGIFフォーマットの詳細を参考にしてみました。

/**
 * アニメーションGIFかチェック
 *
 * @params string $img_file   画像ファイル(画像ファイルまでのPATH付き)
 * @return bool               true:アニメーションGIF false:それ以外
 */
function checkAnimationGif($img_file) {
    if (!file_exists($img_file)) {
        // ファイルが無い
        return false;
    }
    if (!($fp = fopen($img_file, "rb"))) return false;
    $head = fread($fp, 6);
    if (!preg_match("/^GIF89a/", $head)) {
        // GIF89a 以外
        return false;
    }
    // カウント初期化
    $gce_cnt = 0;
    while (!feof($fp)) {
        if (bin2hex(fread($fp, 1)) != "21") continue;
        switch (bin2hex(fread($fp, 2))) {
            /*
            // 2014-11-06 削除
            case "ff0b": // Application Extension
                fclose($fp);
                return true;
                break;
            */
            case "f904": // Graphic Control Extension
                $gce_cnt++;
                if ($gce_cnt > 1) {
                    fclose($fp);
                    unset($gce_cnt);
                    return true;
                }
                break;
        }
    }
    fclose($fp);
    unset($gce_cnt);
    return false;
}

多分これで、チェックできるはず・・・

追記:2014-11-06
adobeのフォトショップで作成されたgifでApplication Extensionが含まれる通常のgifが作成されていることがわかりましたので
上記のソースを修正しました。

スポンサーリンク

HDDが死んだ・・・そして最初から鯖作り直し

HDDの価格が高騰している中、HDDが壊れたorz
仕方が無いのでHDDを購入して、
CentOS6、Apache2.2.21、PHP5.3.8、MySQL5.5.17、Postgresql9.1.1
を入れました、、、

OSの入れ方が変わったおかげで十数回インストールしなしてみたり、、
Mysql5.5系からcmakeで入れるようになったために、またしても入れ方が分からず何回か間違った入れ方をしていたし、、でどこかのblogでcmakeのオプションの書き方が書いてあったのでそれを参考に調べなおして入れることができたよ;_;

あとは、ちまちま、postfixとか設定しなおしたりと、、
postfixとかは正規表現でメールアドレスをの割り振れるように設定とか

Postgresql9.1系から簡単にクラスターが出来るとか・・・

スポンサーリンク