脳みそスワップアウト

揮発性なもので。おもにPHPのこととか。

null を 空文字にしたい

そんな時、みんなどうやっているのだろうか。

たとえば WebAPI から JSON で何らかのデータを取得して、
HTMLを描画しようと innerText を使うと値が null だった場合に "null" と表示されてしまう。

JSは経験が少なくてプラクティスがわからない。

/**
 * nullを置換して返す
 * @param {String}|null str
 * @param {String} replace (optional) 初期値 ""
 * @returns {String}
 * @static
 */
StringUtil.ifnull = function(str, replace) {
  if(typeof replace === "undefined") {
    replace = "";
  }

  if(str === null) {
    return replace;
  }
  return str;
};

こんなの自分で書いたりしないよねたぶん。

openssl でサーバ証明書もろもろ

先日 GlobalSign で証明書を取得したところ、x509 と PKCS7 の両方の形式で証明書が送られてきて、 x509 の場合はさらに中間証明書をこのウェブページから探してねと書かれていて、 どれがどれやらよくわからず探すのが面倒だった。

openssl を使って、PKCS7 → x509 変換をすることができる。 変換した方が中間証明書を探す手間もかからないし、選択ミスも起こらない。

なお、 CertificateChainFile が無くなったのは Apache-2.4.8 からで、2.4.6 以下の場合は 2.2系と同じ設定方法になる。
2.4系からはx509に羅列だ、と思ってると CentOS-7.2 標準のApacheが 2.4.6 だったりしてハマる。

続きを読む

paco が porg に

paco が porg に変わってた。
正確には後継プロジェクトらしい。

http://paco.sourceforge.net/http://porg.sourceforge.net/

configure の --disable-gpaco--disable-grop に。
make logme は無くなっている。

-a, -lD make install, -lp xxx make install あたりの使い勝手は変わらず。
paco2porg で paco からのデータ移行ができる模様。

paco の方が名前が可愛かった。