スマートフォンでも10年使えるOSを目指す「postmarketOS」
スマートフォンでも10年使えるOSを目指す「postmarketOS」 なかなか面白い切り口だなと思いました。実際、インストールして利用するとなると、敷居が高そうな気がしないでもないですが、ニーズはあると思いますので、要チェックでしょう。参考サイトスマートフォン端末などを10年使えるようにすることを目指すOS開発プロジェクト「postmarketOS」(エキサイトニュース)
View ArticleMySQLで「Specified key was too long; max key length is 767 bytes」のエラー
MySQLで「Specified key was too long; max key length is 767...
View ArticleLaravel5.4で、blade内でURLセグメントを取得
Laravel5.4で、blade内でURLセグメントを取得です。「Request::segment」で、URLのセグメントを順に取得できます。http://example.com/aaa/bbb/cccaaa を表示させるには、{{ Request::segment(1) }}bbb を表示させるには、{{ Request::segment(2) }}ccc を表示させるには、{{...
View ArticleLaravel 5.5がリリース
Laravel 5.5がリリースされました。Laravel 5.5は長期サポート(LTS)版です(前回は5.1)。 長期サポート(LTS)版には2年間のバグ修正と3年間のセキュリティ修正が含まれています。一方、一般的なマイナーリリース版には、6ヶ月のバグ修正と1年間のセキュリティ修正が含まれています。参考サイトLaravel 5.5 LTS is Now Released(Laravel...
View ArticleNginxがアクセス数の多いサイトでシェア1位獲得
Nginxがアクセス数の多いサイトでシェア1位獲得したとのこと。特に驚くニュースではないかもしれませんが、気になったのは「Google Web Server」のシェア。トップサイトでのシェアがものすごい。トップ100万サイトにおけるWebサーバ・ソフトのシェアはNginxは41.5%、Apacheは41.4%となっている。参考サイトNginx、トップ100万サイトでシェア1位へ(マイナビニュース)
View ArticleLaravel 5.4から、Laravel 5.5 にアップグレード
Laravel 5.4から、Laravel 5.5 にアップグレードしてみました。特に躓くことなく、無事アップグレードできました。静かすぎて怖い(笑)。早速、デバック用のエラー画面が変わりましたね。Whoopsというエラー処理のフレームワークだそうです。エラーの発生場所がわかりやすくなっていますので、これは歓迎です。 composer.json"scripts": {...
View ArticleLaravel5.5で、EloquentのSQLを確認するtoSql()とgetBindings()のメソッド
Laravel5.5で、EloquentのSQLを確認するtoSql()とgetBindings()のメソッドです。toSql()で、SQLが確認できて、getBindings()で、バインド変数の実際の数値が確認できます。// Eloquent$blog = Blog::where('category', '=', 5) ->where('published_at', '>=',...
View ArticleLaravel5.5で、EloquentのSQLを確認する(その2)
Laravel5.5で、EloquentのSQLを確認する(その2)です。DB::enableQueryLog()で、ログ取得の準備。DB::getQueryLog()で、ログを取得すれば良いらしい。こちらの方が、時間も表示されるので良いかもしれません。// ログ取得の準備DB::enableQueryLog();// Eloquent$blog =...
View ArticleLaravel5.5で、SQLクエリログを記録するミドルウェア
Laravel5.5で、SQLクエリログを記録するミドルウェアです。 enableQueryLog()とgetQueryLog()メソッドの応用ですね。atuwebさんのブログを参考にさせてもらいました。ミドルウェアの動きもよく理解できます。素晴らしい。 /app/Http/Middleware/QueryLog.php(非常に簡易的なもの)namespace...
View ArticlePHPでオブジェクトのメンバ変数に名前を指定した変数でアクセス
PHPでオブジェクトのメンバ変数に名前を指定した変数でのアクセスです。言葉で説明するよりも、例を見てもらったほうがわかりやすいでしょう。こんなこともできるというお話です。使えることはわかりましたが、ちょっと躊躇してしまいますね(笑)。$var = 'name' ;$object_name = $object->$var ;define('VAR', 'name'); $object_name...
View ArticleWi-FiのWPA2認証に脆弱性「KRACK」
Wi-FiのWPA2認証に脆弱性「KRACK」が発見されたとのこと。これだけWi-Fi機器が溢れる中で、全てにパッチを適用するのは非常に困難でしょう。影響が大きすぎますよねぇ。ユーザーのデバイスがWi-Fiネットワークとの接続を確立する際に用いる4ウェイ・ハンドシェイクという手順に存在する脆弱性を突くことで、ネットワーク上を流れる暗号化されたデータを復号できるようにするというものだ。参考サイトWi-...
View ArticleDragonFly BSD 5.0がリリース
DragonFly BSD 5.0がリリースされました。新しいファイルシステム「HAMMER 2」を試験的にサポートしたほか、ファイアウォールツール「ipfw」が強化される参考サイト「DragonFly BSD 5.0.0」リリース(Think IT)
View ArticleLaravel5.5で、ピボットテーブルの他の列に値を追加、更新
Laravel5.5で、ピボットテーブルの他の列に値を追加、更新です。IDと共に、追加の値を配列で指定すると、それぞれ、保存、更新(削除)してくれます。非常に便利。見事な動作に、感動を覚えます(笑)。ブログのタグクラウドを想定した例。タグのサイズと色を指定しています。 $blog = Blog::find(1);$blog->tag()->sync([ 1 => ['size'...
View ArticleLaravel5.5で、ピボットテーブルの他の列の値を取得
Laravel5.5で、ピボットテーブルの他の列の値を取得です。モデルに「withPivot」でリレーションを定義すると、「pivot」属性でアクセスできるようになります。/app/Blog.php(モデル)public function tag(){ return $this->belongsToMany('App\Tag')->withPivot('size', 'color');}...
View ArticleLaravel5.5で、Eloquentのピボットテーブル並べ替え
Laravel5.5で、Eloquentのピボットテーブル並べ替えです。 orderBy()メソッドが使えるので、悩まずに、感覚的に使っていればOKのようです。/app/Http/Controllers/BlogController.php$blog = Blog::findOrFail($id) ;$tags = $blog->tag()->orderBy('tag_id',...
View ArticleLaravel5.5の、Validator::makeでカスタムエラーメッセージ
Laravel5.5の、Validator::makeでカスタムエラーメッセージです。 Validator::makeメソッドでは、3番目の引数として、カスタムメッセージを渡すことができて、こちらも、かなり自由な表現が可能です。$data['mail'] = 'sample.email.com' ;$rules = ['mail' =>'required|email',] ;$messages...
View ArticleLaravel5.5で、モデルとそのリレーションを複製
Laravel5.5で、モデルとそのリレーションを複製です。一発で複製というわけにはいきませんが、ループで回して明示的にリレーションをコピーする事になりますので、把握しやすい(?)という意味では、良いのかもしれません。// 元データ$blog = Blog::findOrFail($id) ;// 元データのリレーション$tags = $blog->tag()->get() ;//...
View Article軽量で多言語対応の動的ウェブアプリケーションサーバー「NGINX Unit」
軽量で多言語対応の動的ウェブアプリケーションサーバー「NGINX Unit」 現在サポートしているのは、Python、PHP、Go。NGINXが、何やら、面白そうなこと始めていますね。要チェックです。NGINX Unitは、複数の言語でアプリケーションを実行できるよう設計された動的ウェブアプリケーションサーバです。 ユニットは軽量、多言語で、APIを介して動的に設定されます。...
View Article