return true to winとは 2018/02/15にphpusers-ja.slack.comでバカウケした、「関数の引数に任意の値を入れ、関数の実行結果がbool trueになれば勝ち」というコードパズルです。 Level 1からLevel 11までの11問が配備されています。 開催会場はこちら => https://returntrue.win/ 画面の見方 No. 名称 説明
はじめに Qiita芸人とか巷で言われますが Qiita の Advent Calendar は初参加です。お手柔らかにお願いします。 Laravel Advent Calendar 2017 4日目の記事になります。 3日目の記事は, @namaozi さんの Laravel5.5でお手軽にフィルタ&検索付きメモアプリを作るチュートリアル でした。クエリスコープを使ってコントローラをシンプルに保てるのはLaravelのいいところですね!このチュートリアルには登場しませんでしたが,今回の私のエントリはページネーションのお話になります。パフォーマンスチューニングされた複雑なページネーションを書こうとするとコントローラが煩雑になりがちですが,この記事で紹介する手法を使えばとてもシンプルに記述することができます。 ページネーションといえば,Webアプリケーションに頻繁に実装が求められる機能ですね
Web上でプログラムの動作を確認できるツールもいくつか存在しますが、今回は3v4lを紹介します。 入力部のUI https://3v4l.org/ を開けば、さっそく最上部に<?phpとだけ書かれたエディタが出現します。つまり、このサイトはPHP専用です。コードを入力して、下にあるeval();ボタンを押せば、実行が始まります。明示的な保存はないのですが、実行するとURLが生成されるので、それでコードを共有することができます。 真骨頂 paiza.ioなど、PHPを含む多言語でこのようなことができるサービスもありますが、3v4lの真骨頂はこの先です。実行結果の上部に「Output for hhvm-3.18.5 - 3.22.0, 7.0.0 - 7.2.0rc6」のように出ますが、複数のバージョンを一気に実行して、それぞれを比較してくれます。 たとえば、PHP 7で使えるようになった「i
この記事はPHP Advent Calendar 2017の2日目です。 ここ最近、本業のほうが死ぬほど忙しく、すっかりブログを書いていなかった@Hirakuです。 だいぶ前のことですが、今年のPHPカンファレンス福岡で例外の話をしてきました。 この時の発表では例外に関する概要が主だったので、例外クラスそのものの設計について補足を書いてみることにします。 例外のある世界観 PHP7ではいくつかのエラーが例外と同じ挙動を示すようになり、エラーではなく例外機構を使う言語に様変わりしました。 例外というのは、かなり侵略性の高い概念であり、例外のある世界では以下の前提に立つことが暗黙のうちに強要されます。 どこでも例外が発生する可能性がある 例外によって中断されても、ソフトウェアが不適切な状態にならないように保証するのは各プログラマの責任(例外安全) たとえば、以下の関数で例外が発生する可能性があ
phpenv派です(anyenvで統一できるから)。 管理が面倒なので default_configure_options は利用しません。.zsh_historyで管理しています。 消えるといけないのでQiitaにメモ。 $ YACC="$(brew --prefix bison27)/bin/bison" CONFIGURE_OPTS="--with-vpx-dir=$(brew --prefix libvpx) --disable-dba --disable-fpm --enable-bcmath --enable-calendar --enable-cgi --enable-ctype --enable-dom --enable-exif --enable-fileinfo --enable-ftp --enable-gd-native-ttf --enable-hash --en
とりあえず現状を載せておきます。 brew upgrade を実行したら、php-buildでインストールしたphpの実行に失敗するようになりました。 php-buildは最新版であることを確認して、(コミットハッシュ: e2969a6) install.sh を実行しました。 結論としては CXXFLAGS='-std=c++11' を追加してビルドすると、phpが実行できるようになりました。 追記 (2017/08/28 14:52) Fix default temporary directory for php-build on macOS by hnw · Pull Request #467 · php-build/php-build でこの問題が修正され、ビルド時に環境変数CXXFLAGS='-std=c++11'を指定しなくてもよくなりました。PHP5.3.29もビルドできるよ
昔、こんな記事を書いたことがあるのですが、 PHPで高速オシャレな配列操作を求めて - Qiita やっぱりforeachを書きまくってて疲れてきたので、コレクションライブラリとして仕立てました。 spindle/spindle-collection: The fastest php collection library ※割とAPIに悩んでいるので、まだしばらくは0.X系にしておくつもり。0.0.2までは無かったことにして下さい。 使い方 <?php require 'vendor/autoload.php'; use Spindle\Collection\Collection; (new Collection(range(1, 100)) ->filter('$_ % 10 === 0') ->map('$_ * 2') ->assignTo($collection); echo $c
Composerのイケてないところ 例えば、RubyのBundlerだと、カレントディレクトリにGemfileが無くても、プロジェクトルートを勝手に判断して(つまり、Gemfileのあるディレクトリをワーキングディレクトリとして)実行してくれる。 しかし、我らがPHPのComposerはこうである。(以下、/path/to/project にcomposer.jsonがあると仮定) $ pwd /path/to/project/src/hoge $ composer dumpautoload Composer could not find a composer.json file in /path/to/project/src/hoge To initialize a project, please create a composer.json file as described in t
PHPUnit は 6.0 で PHP7.0 未満との互換性を切り捨てました。それとともに、Zend1 式の名前空間を捨てて、PHP5.3 で導入された名前空間に移行しました。 <?php use PHPUnit\Framework\TestCase; class MyTestCase extends TestCase { } PHPUnit >= 6.0 にはもう PHPUnit_Framework_TestCase はありません。use PHPUnit\Framework\TestCase; が今後のスタイルです。 でも、弊社まだ本番に 5.x がいるんですよ、とか、自分の公開しているライブラリ/フレームワークには 5.x 互換性の維持が必要で、とか、完全に 7 になりきれない事情がいろいろありますよね。高い方に合わせると前のやつが動かない、低い方に合わせておけばどうにか両バージョン動
Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su
こんにちは!ドイツの美味しいご飯に思いを馳せている、ぐるなびエンジニアの宮原です。 2016年10月末に、海外出張としてドイツ・ミュンヘンで開催されたInternational PHP Conferenceに同僚1人と行ってきました。ホテルの朝食も、レストランの食事も、カンファレンス会場でのご飯も、みんなとても美味しかったです! 前回に引き続き、3日目のセッションを紹介していきます!今回は、(ちょっぴりPHP開発者に特化した)git、静的解析、リファクタリングとデザインパターンの話が出てきます。 (1日目、2日目の様子もレポートにしています) セッション紹介(3日目) Mastering git GitのTips系のお話や、PHP開発者向けのgit hook libraryであるCaptainHookの紹介。スピーカーは@movetodevnullさん。 CaptainHookは@move
PHP 5からPHP 7への移行で、Tumblrはレイテンシが半分、CPU負荷も半減。テストツールでPHP 7への移行に問題ないかをチェック PHPの10年ぶりのメジャーバージョンアップとして昨年12月に登場した「PHP 7」は、PHP 5と比べて2倍以上の実行速度を実現するとリリース前からPHPの生みの親であるRasmus Lerdorf氏自身が説明してきました。 PHP 5からPHP 7へと内部システムのアップデートを行ったTumblrはその成果をブログで発表し、たしかにPHP 7のへ移行したことで実行速度が2倍になったことを裏付けています。 静的解析と自動テストでPHP 7への移行に問題がないかを確認 Tumblrが公開したブログ「Tumblr Engineering — PHP 7 at Tumblr」によると、Tumblrがその内部で稼働しているシステムをPHP 5からPHP 7
2016年11月3日(祝)、大田区産業プラザPiOにて開催された国内最大のPHPイベント「PHPカンファレンス2016」。レバテックフリーランスでは、カンファレンスセッションの登壇者のひとり・和田卓人氏にインタビューを実施しました。 テスト駆動開発の先駆者として知られる和田氏ですが、今回の講演テーマは「PHP7で堅牢なコードを書く-例外処理、表明プログラミング、契約による設計」。あえてテスト以外のテーマを設定した理由をはじめ、PHPの優位性や今注目している言語、初心者エンジニアへのアドバイスなど、幅広くお話を伺ってきました。 <この記事の要約> 1. PHPの良い点は、ゆるふわな言語に見せかけて堅牢なコードも書けるところ。悪い点は、覚えることが多くて難しいところ。 2. テストを書いていればコードの品質が高いわけではない。また、テストが書けないくらい問題を抱えたコードでも、中から改善してい
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く