PHP in_arrayで、大文字小文字を区別しない

件名の通り。備忘録も兼ねている。

in_array(strtolower($needle), array_map('strtolower', $haystack));

$needleで、$haystackを検索する。
array_mapにより、haystackの中身を全て小文字に変換し、strtolowerで検索する文字列も小文字にする。
このため、大文字小文字を区別しない検索ができる。

PHP7から追加された機能について

PHP7から追加された機能について検証してみました。

以下では4項目のみ取り上げますが、もっと盛りだくさんの機能追加がされています。

1. "??"(null比較演算子)
与えられた左辺がnullの場合、右辺で定義した値を返す
たとえば、下記のような書き方をします。

$arr1['abc'] = 'def';
return $arr1['abc'] ?? false; // ptn1: $arr1['abc']は定義されているので、'def'が返る
return $arr2['abc'] ?? false; // ptn2: $arr2['abc']は定義されていないため、falseが返る

ptn2の場合は、isnullやissetを利用して通常確認するため
isnull、isset地獄から抜け出せる可能性大ですね。

2. "<=>"(組み合わせ比較演算子)
左辺が大きい場合に1、右辺が大きい場合に-1を返す)
例:

return 1 <=> 2 // -1
return 2 <=> 1 // 1


威力を発揮するのは、usort等でしょうか。
たとえばこんな感じの。

usort($array, function($a, $b) {
    return $a <=> $b;
});

「PHP7から追加された機能について」続きを読む

Apache2.4.18+PHP7.0.1+mod_mono3.12(仮)の環境を作る

PHP7の正式版が発表されてから2週間で、PHP7.0.1が出ましたね。

これは流行にのらねば。というわけで、Apache2.4.x+PHP7.0.1+mono(おまけ)の環境を作りたいと思います。

私が使っているのはDebian Stretchです。ですが、全てソースビルドするので、ライブラリがそろっていれば
CentやRedHat, SLinuxの方も同じ方法でできます。

ではいってみましょう。

「Apache2.4.18+PHP7.0.1+mod_mono3.12(仮)の環境を作る」続きを読む

モバイル向け開発の今と今後

お久しぶりでございます。

これからは、毎日1記事は更新していきたいと思います(思うだけかもしれません)

本日のトピックは、「モバイル向け開発の今と今後」です。

モバイル向けのアプリ(ゲーム含む)は、今非常に簡単な時代になりました。
VisualStudioでも書こうと思えばかけるし(Xamarin+Xcode必須ですが)
Android+iOS向けにC言語で書いてもいけるわけで。(と書いてる私はC言語はあまり得意ではありません)
また、俗に言うブラウザゲーであれば、専門の知識が無くても
HTML5が書ければ、なんとかなる。という。

そんな中、注目しているのが、

・Android: JAVA
・iOS: swift
・WindowsPhone: PowerApps

です。

「モバイル向け開発の今と今後」続きを読む

  • entry17ツイート
  • Google+