日頃の行い

個人的な日頃の行いをつらつら書いてます\\\\ ٩( 'ω' )و ////

PHP

PHPのjson_encodeで空オブジェクトを出力する

PHP

phpで空オブジェクトを出力したくなって、 おもむろに json_encode([]); とやったら空配列になってしまいました。 $php -a Interactive shell php > echo json_encode([]); [] さてどうしたものかと思ってふと浮かんだstdClassを突っ込んでみました。 そした…

monologで例外のstack traceをいい感じに表示する

PHP

普段phpでログを出力するのにmonologを使っていて、 開発時にはdocker-composeでサーバを起動してログを標準出力に出したりしています。 開発時に例外が発生したタイミングでmonolog経由でエラーログを出しているのですが、 stack traceが1行に表示されてし…

ISUCON7で予選落ちしてきた

PHP

去年同様に id:hoto17296 と id:jp_taku2 と一緒にDarkというチームで出てきました。 結果は26772点! 去年は0点で、26722 / 0 = ∞(?)倍のスコアなのでこれこそ圧倒的成長ですね! arata.hatenadiary.com 最終的なランキングも出てましたが、144(=12 ^2)位で…

PHPのプロファイリングが出来るblackfireを試してみた

PHP

またもやISUCONで使おうと思ってblackfireをいうものを試してみました。 有料な機能も結構ありますが、 無料で使える機能でもどのメソッドがどれくらいの回数呼ばれてるのかとか、 どれくらいの割合を使っているのかとかがわかって便利でした。 blackfire.io…

phpredisをPHP7系で触るためにやったこと

PHP

ISUCONでredis使おうと思った時にPHPからredis触ったこと無いなということに気がついたので、 触れる用にphpredisを試してみた備忘録です。 利用したPHPのversionは 7.1.10 です。 php -v PHP 7.1.10 (cli) (built: Oct 10 2017 01:16:36) ( NTS ) Copyright…

PHPのビルトインサーバっぽく開発しつつhttpsアクセスをしたくなったときにしたこと

PHP

最近Mockアプリケーションを作るときにAPIサーバを一旦雑に作りたくて、 phpを使っているんですが、ローカルの開発環境をhttpsにしているため、XMLHttpRequestを投げようとした際に、 Mixed Content: The page at 'https://xxx' was loaded over HTTPS, but …

PHP(Laravel)製TaskRunner「Envoy」を試してみた

この記事は PHP Advent Calendar 2015 - Qiita の20日分として書かれています。 個人的な開発でLaravel製マイクロフレームワークLumenを利用しているので、デプロイ等に使えないかと思いLaravel製のTask Runner「Envoy」を試してみました。 結論から言うと私…

Laravel製マイクロフレームワークLumenを使おうとして困ったこととその解決策

この記事はLaravelアドベントカレンダーの13日目として書かれています。www.adventar.org最近Laravel製のマイクロフレームワークLumenを使って個人的な開発をしています。 その時にこれしたいんだけど、どうやるの?みたいなことを思ったタイミングが何度か…

PHPのLumenフレームワークでテンプレートエンジンとしてtwigを利用する

PHP

Laravel製のマイクロフレームワークLumenにちょっと触ってみました。 その時にテンプレートエンジンにTwigは使えないのかなぁと思ったので色々試してみた時の話です。Lumen - PHP Micro-Framework By Laravellumen.laravel.comLumenではデフォルトのテンプレ…

LumenというLaravel製マイクロフレームワーク(?)をSilexとSlimと比較してみた

PHP

LumenというLaravelのコンポーネントを利用したフレームワークが出たので、ちょっと触ってみました。Lumen - PHP Micro-Framework By Laravellumen.laravel.comLumenはSilexやSlimに比べてREQUESTS PER SECONDの値が高いらしいですね。 なので、今回はsiege…

PHP製マイクロフレームワークSlimで404ページ500ページを表示させるだけ

タイトルの通りの事をしようとしていたら 404ページの内容を考え始め 気がついたらBLEACHを読んでいました。 いつからコードを書いていると錯覚していたのでしょう。 さて、Slimでエラーハンドリング試してみました。 ドキュメントが完璧だったので特に面白…

twigテンプレートエンジンでvue.jsを使うとデリミタがコンフリクトする。

silex+twigでvue.jsを使ってみようと思ったら '{{ message }}' がtwigのdelimiterとして認識されてしまってエラーになった。twigとは Homepage - Twig - The flexible, fast, and secure PHP template engine エラー内容 Twig_Error_Runtime: Variable "mess…

composer installでgitのtagを指定する

PHP

cakephpの2.0.5をcomposerでinstallしようとしたらなんか上手く行かなかったので 自分で追加しました。 ついでにcomposer.jsonの使い方のメモとして残そうと思います。 composer.json { "repositories": [ { "type": "package", "package": { "name": "cakep…

Frameworkで遊ぶ

最近いろんなフレームワークに触ってみようと思っていろんなものに触っています。 具体例としてコードを書いています。 phpくらいしか触らなかったせいでplayフレームワークで色々困ったので 言語が変わった時俺はどんなところで困るのか試してみようと思い…

fuelphp Error - invalid data source name in COREPATH/classes/database/pdo/connection.php on line 94

PHP

こいつが起きたときはDBの設定の問題(見りゃわかるか(´・ω・`)w)。94行目だと指定したDB名が存在してないときに起こった。 array( 'connection' => array( 'dsn' => 'mysql:host=localhost;dbname=fuel_sample_dev', 'username' => 'root', 'passwo…

silexをロリポップで使おうとしたら躓いた。

PHP