タグ

phpに関するmole-studioのブックマーク (11)

  • Laravelでウェブアプリケーションをつくるときのベストプラクティスを探る - Qiita

    はじめに (注) 記事は単なる目次です。 半年前くらいから Laravel を使い始めて、個人的にベストプラクティスをまとめたいと思っていたので、目次の内容で順次エントリーを上げていきたいと思います (順不同になりそうだし、項目は増減するかも)。 方針 できるだけフレームワークの作法に合わせる できるだけ変更容易性が高くなるようにする できるだけトリッキーにならないようにする といったところです。 環境 各エントリーにも記載しますが、基的には PHP 5.6 Laravel 5.3 で動作確認ができたコードを載せるつもりです。 バージョンによって書き方に違いがある場合は極力補足するつもりです ( 5 系のみ)。 目次 ルーティング コントローラー リクエスト&バリデーション ビュー テンプレート イベント&ジョブ&通知&キュー Eloquent ORM コマンド サービス テスト 番外

    Laravelでウェブアプリケーションをつくるときのベストプラクティスを探る - Qiita
  • PHPのコードをHackのコードに変換する - type holyshared = Engineer<mixed>

    PHPコードをHackのコードに置き換えるのは、最高に面倒くさいですよね。 なので、HHVMで提供されている、hackificatorを使用して、一気に変換できないかを検証してみました。 hackificatorはPHPコードをHackに置き換える為のコマンドラインツールです。 hackificatorはOCamlで実装されており、ASTベースでのコード変換を行いまます。(コード読む限り) 試した、HHVMのバージョンは3.12.0です。 置き換えのステップ 置き換えには2ステップ必要です。 PHPのコードをHackのコードに置き換える Hackのコードをstrictモードにアップグレードする PHPのコードをHackのコードに置き換える 下記のコマンドで、指定したディレクトリ内のPHPコードをHackのコードに置き換えます。 hackificator -thrift . 変換作業の仕様は

    PHPのコードをHackのコードに変換する - type holyshared = Engineer<mixed>
  • 「Mockery」を使ってサクッとPHPのテストを書いてみる

    ごあいさつ はじめまして。アライドアーキテクツの石川と申します。 2月に入社してから早くも3ヶ月がたとうとしています。 私は前の職場ではほとんどjavaで開発していたのですが、 アライドに入社してからは主にPHPで開発をしています。 私の回では、その時その時に関心のある技術情報を発信していければ、と思っています。 皆様どうぞよろしくお願いいたします。 今の自分の課題はとにかくUnitテストを書くことなので、 今回はPHPのモッキングフレームワークである「Mockery」について書きたいと思います。 Mockeryって? padraic / mockery こちらで御座います。 static methodのモック化が出来たり、テスト対象のメソッド内部で生成されるインスタンスをモック化したり、 PHPUnitでやろうとすると一手間かかることをサクっと出来てしまいます。 Let’s インストール

  • Building a Better PHP — Part 2: Using HHVM

    DevCoach A developer coaching platform to improve productivity and code quality. FogBugz An easy-to-use software project management tool designed with an agile-first mindset.

    Building a Better PHP — Part 2: Using HHVM
  • Database One-to-Many with two foreign key fields in Laravel

  • PHPerがドメイン駆動設計と関数型プログラミングを学んで得たもの(前編) - Qiita

    はじめに 動機 先日こんな記事を書きました。 ドメイン駆動設計と関数プログラミングをScalaで - Qiita ドメイン駆動設計と関数プログラミングをElixirで - Qiita Scala にしても Elixir にしても、純粋な関数型プログラミング言語ではなくて、オブジェクト指向の要素も取り入れたマルチパラダイムな言語だと思いますが、一方で旧来のオブジェクト指向な言語に関数型のパラダイムが入り込んできているという傾向 (map, reduce とかラムダとか) もあり、これから先も、両者が共に近づいてそれぞれのいいところを活かしながら発展し、ソフトウェア開発における生産性や変更容易性が上がっていくのかなぁと期待が膨らみます。 この記事では、関数型の何がいいのか、PHP + オブジェクト指向で書くにあたって、何か取り入れられるところはないか、という点について、ドメイン駆動設計のイディ

    PHPerがドメイン駆動設計と関数型プログラミングを学んで得たもの(前編) - Qiita
    mole-studio
    mole-studio 2017/01/06
    最近全く同じようなこと考えていろいろ試したけどarrayの仕様的にどうにもならず中途半端な感じに妥協した。もうPHPが悪いと思うことにした
  • PHPのescapeshellcmdを巡る冒険はmail関数を経てCVE-2016-10033に至った

    エグゼクティブサマリ 2011年始めに徳丸がescapeshellcmdの危険性を指摘したが、この問題はmail関数のadditional_parameters経由で攻撃可能であることが2013年末に指摘された。その後2016年末に、PHPMailerの脆弱性CVE-2016-10033として現実のものとなった 経緯 2011/1/1 徳丸が「PHPのescapeshellcmdの危険性」を書いて、クォート文字がペアになっている場合にエスケープしないという仕様が余計なお世話であり、危険性が生じていることを指摘 2011/1/7 大垣さんがブログエントリ「phpのescapeshellcmdの余計なお世話を無くすパッチ」にて修正案を提示 2011/10/23 廣川さんが、大垣さんのパッチ案を少し修正してbugs.php.netに提案。修正案は却下され、マニュアルを修正することに 2011/1

  • PHPUnit マニュアル

    1. PHPUnit のインストール要件PHP Archive (PHAR)WindowsPHPUnitPHAR リリースの検証Composerオプションのパッケージ2. PHPUnit 用のテストの書き方テストの依存性データプロバイダ例外のテストPHP のエラーのテスト出力内容のテストエラー出力エッジケース3. コマンドラインのテストランナーコマンドラインオプション4. フィクスチャtearDown() よりも setUp()バリエーションフィクスチャの共有グローバルな状態5. テストの構成ファイルシステムを用いたテストスイートの構成XML 設定ファイルを用いたテストスイートの構成6. リスクを伴うテスト無意味なテスト意図せぬうちにカバーされているコードテストの実行時の出力テストの実行時のタイムアウトグローバルな状態の変更7. 不完全なテスト・テストの省略不完全なテストテストの省略

  • DB handle周りのチューニング - がるの健忘録

    某所というかまぁFacebookでなのですが。 接続数が多くて「too many connections」エラーが発生する場合。 PHPのプログラム(バッチファイル)側として何か対応すべきことや、 注意すべきことなどありますでしょうか? という、大変に有意義で結構質問のありそうなあたりをいただいたので。 せっかくなので、Blogネタで書かせていただきました。 さて早速。 とりあえず直線的に状況を考えると、このエラーメッセージは「なんか接続数多すぎてさばけないヨ!」っていうMySQLからのクレームです。 悲鳴、って読み替えてもOK。 先に対象外である「PHP以外の角度からの」解法としては ・max_connections を増やして、もっと沢山接続できるようにする って方法があります。 あんまり無茶な数値にすると「DBサーバが落ちる」とかいう悲劇に直結しますので、サーバのリソースをしっかり監

    DB handle周りのチューニング - がるの健忘録
  • Brew'ing PHP, MySQL & Nginx on Mac OS X

    There are many ways to install PHP, MySQL & Nginx on Mac. Here we will be doing it using brew. Installing PHP 5.4 (with FPM) on Mac OS X Search for available PHP formulas (formula’s in homebrews are equivalent to packages in aptitude) brew search php It will return long list of php 5.2, 5.3, 5.4 packages. We need 5.4. Tap it using: brew tap josegonzalez/php brew tap homebrew/dupes If you do not ta

    Brew'ing PHP, MySQL & Nginx on Mac OS X
  • 1