並び順

ブックマーク数

期間指定

  • から
  • まで

121 - 160 件 / 2226件

新着順 人気順

phpunitの検索結果121 - 160 件 / 2226件

  • 10年開発してきたPHPアプリケーションにPHPStanを導入した - BASEプロダクトチームブログ

    Tech Dept. 基盤グループエンジニアの @tenkoma です。 BASEには50以上のPHPプロジェクトのプライベートリポジトリがあります。 (アプリケーションは十数個で、残りの多くが、アプリケーションが依存するライブラリです) 過去4年ほどの間に新規に作られたリポジトリにはほぼ最初からPHPStanが導入されていますが、それ以前から開発していたリポジトリには導入されていないものが多数ありました。 それらのリポジトリにPHPStanを導入していったので、なぜ導入したか、導入方法、得られた効果について紹介します。 PHPStanとは PHPコードを実行せずに、実行時にエラーになりうる箇所を検出するツールです。PHPStanを利用しCIに組み込むと、テスト実行せずに検出できるバグの一部は、PHPStan解析で指摘してくれるので、コードレビューの負担が減ることが期待できます。 なぜPH

      10年開発してきたPHPアプリケーションにPHPStanを導入した - BASEプロダクトチームブログ
    • PHP 製デプロイツール「Rocketeer」を使ってみた | 株式会社メイプルシステムズ

      こんにちは。西山です。 毎日続く炎天と夕方に来襲する豪雨で夏らしさが一気に全開になりましたね。 今回はデプロイツール「Rocketeer」についてご紹介したいと思います。 これは GitHub上で公開されているオープンソースソフトウェア (OSS) です。リポジトリは https://github.com/Anahkiasen/rocketeer にあります。ライセンスは MIT です。 デプロイツールというと、以前の現場で Capistrano を使っていたのですが、これは Ruby 製ですね。 Rocketeer は Capistrano に似た構成を持つ PHP 製のソフトウェアです。普段、PHP の案件に関わることが多いのですが、デプロイツールも同じ PHP で書かれていたほうが安心感(?)がありますよね。 また、Composer や PHPUnit の実行にもデフォルトで対応

        PHP 製デプロイツール「Rocketeer」を使ってみた | 株式会社メイプルシステムズ
      • テスト駆動開発(TDD)とは何か。コードで実践方法を解説します - パンダのプログラミングブログ

        この記事は、弁護士ドットコム Advent Calendar 2019 - Qiitaの2日目の記事です。 TL;DR TDDの実践方法を実際にコードを書いて解説します TDDの「レッド・グリーン・リファクタリング」のリズムを学ぼう 何度もテストを実行して、プログラムに対する不安を取り除こう TDDはテスト技法ではなく設計手法 TDD Boot Camp Sendai 9thに参加しました。TDDの伝道師和田さん(@t_wada)を講師に迎え、有志たちで開かれた勉強会でした。 午前中は和田さんによるTDDに関する講演とライブコーディング。午後は参加者同士のペアプロで出題されたお題を実装していく活気あるイベントでした。 イベントを通じてTDDはテストファーストのことだと考えていた自分は目を見開かされました。TDDは単にテストファーストでプログラムを実装することではなく、実装(ソフトウェア)が

          テスト駆動開発(TDD)とは何か。コードで実践方法を解説します - パンダのプログラミングブログ
        • 続・開発環境のツール周りをちょっと快適にした話 - ぐるなびをちょっと良くするエンジニアブログ

          こんにちは!パンダ大好きエンジニア、宮原です。 前回(開発環境のツール周りをちょっと快適にした話)の記事では、チームで導入した開発支援ツールについて、どんなツールがあるのか、どんな考えで導入したのか、というところをご紹介しました。 開発支援ツール導入後はコードの品質も上がって(潜在バグの低減、保守性の向上)、快適に開発ができるようになりました。現在はCIサーバによる監視も実現できており、もっと開発が快適になりました! 今回は、CodeIgniterというPHPフレームワークに各開発支援ツールをどのように導入し運用しているのか(CIサーバを活用したツール実行方法)をもっと具体的に紹介していきたいと思います。 目次 リポジトリ(ディレクトリ)の構成 各ツール用ディレクトリの詳細 PHP Coding Standards Fixer PHPMD PHPLOC PHPCPD phpDocument

            続・開発環境のツール周りをちょっと快適にした話 - ぐるなびをちょっと良くするエンジニアブログ
          • WordPressのテーマ開発を超効率化するためのテーマMimizukuを作りました

            先日「WordCamp Tokyo 2016 で「本当に使えるテーマとはどのようなものかを考え続けた結果」というLTをやったけど全然間に合わなかったので補足記事を書きました」という記事を書きまして、その中のスライドで開発中のテーマ Mimizuku の URL を載せていましたが、ある程度形になったので記事を書くことにしました。 Mimizuku の特徴 子テーマ開発用の親テーマ Habakiri で得た知見をもとに開発 レイアウトテンプレートとビューテンプレートを簡単に差し替え static ビューテンプレート get_template_part()に外部変数を渡せる独自テンプレートタグ CSS フレームワーク Basis アイコンフォント 便利 Composer スクリプトいろいろ CI(継続的インテグレーション) 子テーマ開発用の親テーマ テーマの開発手法は主に「フルスクラッチで開発

              WordPressのテーマ開発を超効率化するためのテーマMimizukuを作りました
            • CakePHPアプリをHudsonで継続的インテグレーションする方法

              この記事はCakePHP1.2系またら1.3系を対象としており、CakePHP2.0系では別のアプローチになります。 不思議なことにCakePHPアプリの開発でHudson使って継続的インテグレーションしている事例をほとんど見たことがないんだけど、個人的にはPHPアプリだって全部HudsonでCIすべきと思っているのでやってみた。 (ちなみに最近までphpUnderControlでCIしていた) 概略 CakePHPアプリでCIやろうとして問題になるのは、 CakePHPでのテストライブラリがSimpleTestでありJUnit互換のテスト結果を出力できないこと さらにSimpleTestでは一応XMLでの結果出力ができるのに、CakePHPのreporterにcake_xml_reporterとかが無くて、html出力かテキスト出力しかできない という2点にあるので、この2点をクリアする

                CakePHPアプリをHudsonで継続的インテグレーションする方法
              • AWSにおける本番環境を想定したCI/CD実践 - y-ohgi's blog

                この記事は DMM.com Advent Calendar 2018 - Qiita の25日目です。 About CircleCIとCode兄弟を使いCI/CDを作っていこうというものです。 単純に環境を作るわけではなく、CloudFormationを使って本番環境を想定した構成にしていきます。 ターゲットとしては既にCircleCI・CodePipelineをざっくり知っている人で、本番向けのCI/CDをどのように構築していくかについて自分なりのプラクティスを紹介します。 サンプルコード 今回の構成を再現するためのコードを用意しました。 https://github.com/y-ohgi/ci-cd-example CloudFormation 環境はCloudFormationで管理しているため以下のコマンドで再現できます。 VPC、Aurora、ECS、CodePipelineなど

                  AWSにおける本番環境を想定したCI/CD実践 - y-ohgi's blog
                • PHPにおける宣言的集合操作入門:Ginq

                  配列、連想配列といったデータの集まり - 集合に対する操作は、日々のプログラミングにおいて頻繁に記述するコードの1つです。その一方で、旧来の愚直なループを使った集合操作はコードを複雑にする大きな要因となります。これに対処するために、Microsoftは統合言語クエリ:LINQ(Language-Integrated Query)を開発しました。LINQ to Objectsのページには、LINQを使うメリットとして次のように説明があります。 本質的に、LINQ to Objects は、コレクションを扱うための新しい方法です。 従来の方法では、複雑な foreach ループを記述して、コレクションからどのようにデータを取得するかを指定する必要がありました。 LINQ を使用する場合は、何を取得するかを表す宣言コードを記述します。 また、LINQ クエリには、従来の foreach ループと

                    PHPにおける宣言的集合操作入門:Ginq
                  • [書評]効率的なWebアプリケーションの作り方ーPHPによるモダン開発入門ー : candycane development blog

                    小川雄大さんの新刊、効率的なWebアプリケーションの作り方 ~PHPによるモダン開発入門 をPHP勉強会のarray_randのお陰で頂いたので読んでみたので感想を。実質的にはSymfony2の貴重な日本語書籍この書籍はMVCやオブジェクト指向の基礎からスタートして、Symfony2(Symfony Standard Edition)、Doctrine、Twigやgit、git-flow、Twitter bootstrap(v2)、PHPUnit、Stagehand_TestRunnerといったツールを駆使してアプリケーションの開発を行う流れをソースコードを発展させながら解説するという書籍です。見ての通り最新のツール群を取り揃えた形の解説書籍になっています。特にSymfony2を使ったコードが(namespaceが付いたコード)書籍で確認できるという意味では貴重なのではと思いました。 また

                    • アジャイル開発手法 (スクラム、XP) の導入事例 - GMOインターネットグループ グループ研究開発本部

                      はじめまして、次世代システム研究室の A.F. です。 今回のエントリーでは私たちが日々の業務で取り組んでいる『アジャイル開発手法 (スクラム、XP)』の導入事例について紹介させて頂きます。次世代システム研究室の重要なミッションは『GMO インターネットグループの重要なプロジェクトの成功を技術面でサポートする』ことですが、そのため自ずと携わるプロジェクトは多岐にわたります。例えば EC やソーシャルゲーム、広告技術と各プロジェクトで目的も規模もユーザーも異なりますが、Web サービスとして共通しているのはいずれも『変化が激しい』『不確実な要素が多い』という点です。 開発側のスケジュールやリソースといったものから技術的な実現可能性、対象となるユーザーやマーケット、はたまたそれを取り巻く環境など様々な不確実要素を抱えながら開発を行うわけですが、その中で最初から全ての要件を定義することは難しいで

                        アジャイル開発手法 (スクラム、XP) の導入事例 - GMOインターネットグループ グループ研究開発本部
                      • Mobile App Develpoments in PHP - PHAP

                        PHAP – Write in PHP, run natively on billions of devices Home Sign Up Creative native iOS, Android and Windows Phone apps in PHP. Sign Up Learn More Mobile apps made easy for 5+ million PHP developers. Finally.  With PHAP, you can write your mobile apps entirely in PHP and share the same code on iOS, Android and Windows Phones.  PHP is the best language for mobile app development  Less Typing – PH

                          Mobile App Develpoments in PHP - PHAP
                        • PhpStormで効率良く開発するための設定その1

                          2013年10月3日追記 こちらの記事の情報は少し古くなってきたため、あたらしく記事をまとめ直しました。以下の記事も併せてご確認ください。 私がPhpStormで開発する上でよく使用する設定や使い方をまとめました。 前半と後半に記事を分けて紹介します。前半は、エディタの表示やファイル管理に関する設定を紹介します。後半は、入力補完やZenCoding、スニペット補完などのコーディングに関する設定と、git,phpunitなどの外部ツール連携に関する設定を紹介します。 動作確認環境 PhpStorm2016.2PhpStorm5.02 目次 フォントを変更する コンソールのフォントを変更する 設定ウィンドウのフォントを変更する 行番号を表示する 空白文字を表示する 折り返しを設定する 折りたたみを設定する ツールウィンドウを表示する ツールバーなどを削除してエディタの領域を広げる タブを1行で

                            PhpStormで効率良く開発するための設定その1
                          • CakePHP : A Rapid Development Framework :: Home

                            New CakePHP 5.0 Chiffon. Faster. Simple. Delicious. What's new in version The migration guide has a complete list of what's new in. We recommend you give that page a read when upgrading. A few highlights from 5.0 are: PHP 8.1 required. Improved typehints across the framework. CakePHP now leverages union types to formalize the types of many parameters across the framework. Upgraded to PHPUnit 10.x

                              CakePHP : A Rapid Development Framework :: Home
                            • cpanfile

                              FuelPHP 勉強会の資料。 fuel.php-web.net を題材としている。 FuelPHP の概要、PHPTAL や PHPUnit 等 名古屋コワーキングスペース アートファクトリーで開催

                                cpanfile
                              • よりよいPHPを作る — パート1:HHVMとHack [和訳] - Engine Yard Blog

                                注:これは「HHVM/Hack」シリーズのパート1です。 本記事は英語版ブログで公開された記事の翻訳版です。 Facebookは2014年3月20日、HHVM用のプログラミング言語「Hack」をリリースしました。この記事ではHHVMとは何かを紹介しつつ、Hackについて詳しく見ていこうと思います。 Facebookは(おそらく)世界最大級のPHPインスタレーションですが、近年はPHP5を離れ独自開発によるソリューションに向かっています。 ここまできても、まだPHP環境と呼べるのでしょうか?答えは「もちろん」と「とんでもない」の中間ぐらいといえます。 HHVM(HipHop Virtual Machine)の簡単な歴史 Facebookは初めに「HPHPc」というPHPからC++へのコンパイラを作りました。 これはFacebookの膨大なコードベースをC++コードに変換し、そこからコンパイル

                                  よりよいPHPを作る — パート1:HHVMとHack [和訳] - Engine Yard Blog
                                • PhpStormでまず覚えるべきショートカット - Qiita

                                  個人的に使用頻度の高いショートカット。winとmacで標準に設定されているショートカットキーを表記しています。OSのショートカットと被っていたりすることもあるので注意。名称とカテゴリはkeymap設定に準じています。 Editor Actions Complete Current Statement おそらく最もお世話になるショートカット。現在のステートメントをカカッと終了させてくれる。行末にセミコロンを追加してくれるだけでなくfunction Hogeまで書いてコレするとfunction Hoge(){}まで補完してフォーマットも整えてくれる。 win:Ctrl + Shift + Enter mac:⇧⌘⏎ View Recent Files 過去に開いたファイルやウィンドウの履歴。さっき編集してたファイルとか間違えて閉じたときとかするりと戻れる。あと検索できる。 win:Ctrl +

                                    PhpStormでまず覚えるべきショートカット - Qiita
                                  • PHPerのためのJenkins

                                    序文 ソフトウェア開発とはままならないものだ。そもそも開発と銘を打たれているにも関らず製造工程のような量的単位「工数」で管理しようとしているので致し方無いのかも知れない。そう、開発と言うからには「作ったことの無いものを作る」ということであるにも関わらず、 ・「何人がかりで何日で出来る?」と聞く ・「何日くらいですかね、やってみないと分からないけれど」と答える ・「分からないけれど」はとりあえず無視して、何日かの余分をとってスケジュールを作る そんなことをしていれば古典落語に出てくる「致し方ないけれど起こる残念な出来事」のようなオチにしかならないのは目に見えているのだが、これは現実によく有るやりとりである。しかし、これでもまだマシな部分も有る。少くとも作ろうとしてとしている人が「何日で出来そうか?」について答えているからだ。作ろうとしている人ではない人が当てずっぽうに答えてスケジュールが決ま

                                    • シンボリックリンクを用いたアトミックデプロイと opcache と realpath cache - ngyukiの日記

                                      これまで PHP のアプリケーションのデプロイは rsync でどべーとコードを撒いていました。が、それだと新旧のコードが混在するし Capistrano とかはデフォでシンボリックリンク切り替えでアトミックなデプロイになっているし、周回遅れな感じもしますが今後は似たような方法でデプロイしたいと思います。 releases/ ディレクトリの中にリリースタグでディレクトリを掘ってコードを配置して current を最新のリリースのディレクトリへのシンボリックリンクにします。そして Apache や Nginx でドキュメントルートを current の中の公開用のディレクトリに設定します(/path/to/app/current/public とか)。 /path/to/app/ releases/ 20161213/ 20161224/ 20170101/ current -> relea

                                        シンボリックリンクを用いたアトミックデプロイと opcache と realpath cache - ngyukiの日記
                                      • 独立したコアレイヤパターン - Shin x Blog

                                        モチベーション 全体 サンプルアプリケーション コアレイヤ サービスレイヤ 口座間送金ユースケース 処理の流れ コアレイヤ サービスレイヤ コアレイヤ対象範囲 DDD スタイル 手続き型スタイル 実装アイデア レイヤでパッケージを分ける コアレイヤの範囲 ポートの種類 DDD スタイルへの一歩目 さいごに 参考 独立したコアレイヤは、アプリケーション実装パターンである。以下のような特徴を持つ。 アプリケーションを、何を実現するのか(What)と、どのように実現するのか(How)に分ける。 What は、コアレイヤに実装する。ユースケースやドメインロジックを実装する。フレームワークやライブラリには依存しない。UI やデータベースからは独立している。 How は、サービスレイヤ(仮)に実装する。フレームワークやライブラリを活用して、ユースケースが要求する技術詳細を実装する。 コアレイヤが必要な

                                          独立したコアレイヤパターン - Shin x Blog
                                        • PHPのテスティングフレームワーク - p4lifeのメモ

                                          今回取り上げるテスティングフレームワークライブラリ,アプリケーションの品質を高めるために必要不可欠なテストですが,そのテストを実行するためのツールに関する情報を集めました. phpt PHPUnit SimpleTest lime DocTest PHPSpec phpthttp://qa.php.net/write-test.php PHP 独自のテスト機構 PHP 本体,PEAR のテストで最も良く使われる.テストファイルの拡張子は .phpt TAP*1 対応:PEAR 1.5.0 から対応 pear run-tests コマンドに -t オプションを付けると run-tests.log に TAP フォーマットのログが出力される特徴: pear コマンドが使えればテストを実行できるため,大抵の環境で動かせる GET/POST/Cookie, php.ini 設定, 標準入力をパラメ

                                          • PHPを5.6から7.2にする際に苦労した点やハマった点、嬉しかった点 - WebエンジニアのLoL日記

                                            はじめに php7ccで検出されない問題とは ハマった点1: count関数の挙動変更 ハマった点2: $array[] で値を追加しようとして壊れる 苦労した点: mysql関数の置き換え 苦労した点2: PHPUnitのバージョンも上げないといけない 逆に嬉しかった点: 型アノテーションの強化 まとめ はじめに この記事は PHPアドベントカレンダー 6日目の記事です。 皆さん、PHP 5.6のセキュリティサポートは2018年12月いっぱいで終了です。つまり、このアドベントカレンダーのカウントダウンがPHP 5.6終了へのカウントダウンなわけです。 PHP5.6からPHP7系に移行しようとしている皆さんはきっとphp7ccを使ってコードのチェックをしているかと思いますが、php7ccでは検出されず、実際に動かしてみないと気づかない問題もあります。 今回はそういったハマった点や苦労した点

                                              PHPを5.6から7.2にする際に苦労した点やハマった点、嬉しかった点 - WebエンジニアのLoL日記
                                            • CentOS6.xでHHVMを動かす&今度出版される書籍の宣伝 - uzullaがブログ

                                              みなさんPHPやってますか!(挨拶) 私は先週Go言語書いてましたけど来週はPHPです!やったPHPだ!! さておき、まずは宣伝 もうすぐ私が一部担当した書籍が出ます!!! Webアプリエンジニア養成読本 和田 裕介, 石田 絢一 (uzulla), すがわら まさのり, 斎藤 祐一郎 Webアプリエンジニア養成読本[しくみ、開発、環境構築・運用…全体像を最新知識で最初から! ] (Software Design plus) 作者:和田 裕介,石田 絢一 (uzulla),すがわら まさのり,斎藤 祐一郎技術評論社Amazon 本書籍は、ウェブアプリ(ウェブサービス)を作成した事が無い方向けに、ウェブってなんなの?という基礎知識から、PHP/Rubyを使って実際に簡単なアプリを作成し、さらには本番を運用するためにサーバーを設定してみる&どのような事を気を付ければ良いのか、等といった基礎的な

                                                CentOS6.xでHHVMを動かす&今度出版される書籍の宣伝 - uzullaがブログ
                                              • PHPの名前空間の効果的な使い方を考える

                                                PHPは5.3から名前空間が導入され、名前の衝突を避けるため長いクラス名をつけることから解放されました。しかしながら、名前空間を使ったコードは、名前空間を使っていないものに比べて本当に読みやすくなっているのでしょうか? ここで例を挙げます。PHPの良質なソースコードと言えば、私はZend Framework(ZF)やSymfonyを思い浮かべるのですが、ZFのとあるクラスの冒頭を見てみましょう。 https://github.com/zendframework/zf2/blob/master/library/Zend/Mvc/View/Console/RouteNotFoundStrategy.php <?php /** * Zend Framework (http://framework.zend.com/) * * @link http://github.com/zendframewo

                                                  PHPの名前空間の効果的な使い方を考える
                                                • PHPUnit Manual 3.6 Japanese

                                                  Welcome to PHPUnit! PHPUnit is a programmer-oriented testing framework for PHP. It is an instance of the xUnit architecture for unit testing frameworks.

                                                  • PHPUnit ポケットガイド

                                                    この作品は、Creative Commons Attribution License の下でライセンスされています。このライセンスの内容を確認するには、http://creativecommons.org/licenses/by/2.0/ を訪問するか、あるいは Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA に手紙を送ってください。

                                                    • util.php - The PHP programmer's best friend - UtilityPHP

                                                      util.php (1.1.0) Debugging - var_dump Arrays & Objects - array_first - array_first_key - array_flatten - array_get - array_last - array_last_key - array_map_deep - array_pluck - array_search_deep - array_clean URLs - add_query_arg - get_current_url - http_build_url - is_https - remove_query_arg - slugify Strings - htmlentities - htmlspecialchars - linkify - match_string - random_string - number_to

                                                        util.php - The PHP programmer's best friend - UtilityPHP
                                                      • PHP 開発でも Grunt を使う - ngyukiの日記

                                                        PHP Advent Calendar 2013 in Adventar の3日目です。 前日は @matsubo さんの コピペで出来るComposer導入 でした。Composer、私も使ってます。 Grunt とは Node.js で作られた色々な作業を自動化するためのツールです。 普通は Node.js での開発や js とかのフロントエンド開発に使われますが、PHP での開発でもわりと便利です。 PHP のための Grunt プラグインも色々あるので、とりあえず次の2つだけ使ってみます。 grunt-phpunit grunt-php 前提 php や node や npm はあらかじめインストールしておいてください。 ソースとテストの準備 とりあえず phpunit が実行できるソースツリーを用意します。phpunit は今風に composer でインストールします。 $ f

                                                        • JenkinsでFuelPHPのユニットテストを自動化してみた - sometimes I laugh

                                                          Jenkins、いいですよね。オペレーションの自動化には美があります。前回の記事ではGitによるデプロイ自動化を行いましたが、その時点で既にユニットテストの自動化は想定していたので、今回はそれを実現してみます。 これによって、機能を実装してプッシュする度に自動でデプロイされ、その過程でテストが自動で行われるので、特に通知がなければ動作が保証されるようになります。実際に本番環境への適用の際には、もう少ししっかりテストをする必要があるのかもしれませんが、開発環境レベルではテストを意識的に実施せずとも気兼ねなく開発を進めることができます。 ユニットテストにはおなじみのPHPUnitを使います。なお、前回のJenkins導入やデプロイ自動化の話はこちらの記事でまとめてありますのでよろしければどうぞ。 ユニットテストとテスト自動化 従来、プログラムのテストはミスの許されない商用プロダクトでは欠かせな

                                                            JenkinsでFuelPHPのユニットテストを自動化してみた - sometimes I laugh
                                                          • コードカバレッジ測定ツールPHP_CodeCoverageをCakePHPで使ってみた

                                                            PHP_CodeCoverageで、CakePHPのユニットテストのコードカバレッジを表示してみました。 CakePHP標準のテストランナー(test.php)でも単一のテストケースについてはコードカバレッジが表示できるのですが、All tests の時はコードカバレッジが表示されません(All testsでも表示されることもあるようです。hiromi さん、ありがとうございます)。 そこでPHP_CodeCoverageを使って、All testsのコードカバレッジを表示してみました。 1. PHP_CodeCoverage インストール PHP_CodeCoverageは、PHPUnitでおなじみのSebastian Bergmannが開発した、コードカバレッジやCRAPを計測、表示するツールです。 PEARパッケージで提供されているので、pear コマンドでインストールします。 20

                                                            • WordPressプラグイン開発のバイブルを読むと何ができるようになるか。

                                                              こんにちは。WP-Dオリーブです。西川です。 プラグインが自力で作れるとしたらどうなるのかを想像してください WordPressの魅力のひとつは豊富なプラグインです。プラグインがあれば、あんなこともこんなことも可能になり、サイトで実現したいことやクライアントが必要としている機能を実現できます。そうした魅力についてはみなさん、よく知っていると思います。 それから、ネットで探せる functions.php にコピペして使える色々なコードも便利ですね。プラグインにはなっていないけれど、やりたいことを検索すると、だいたいのことは誰かが解決してくれていて、ブログなどに書かれているコードをペーストすると、やりたかったことができてしまったりします。 もしそういう、プラグインやちょっとしたコードを、自分で書けるようになれるとしたらいかがでしょうか? 「ちょっと書ける」というレベルの条件は何でしょうか?そ

                                                                WordPressプラグイン開発のバイブルを読むと何ができるようになるか。
                                                              • はじめてのフレームワークとしてのFuelPHP

                                                                内容紹介こんなフレームワークが欲しかった!FuelPHP は、2011 年7 月に最初のバージョン1.0 がリリースされた最新のフレームワークです。先行する多くのフレームワークを参考に、PHP 5.3 の機能をフルに活用しゼロから開発されました。最初からMongoDB やRedis をサポートし、RESTful なコントローラをすぐに作成できる最先端のフルスタックなフレームワークです。しかも、シンプルで覚えやすく、かつ、軽量高速です。 新しいフレームワークですが、すでにGitHub では100 人以上の開発者がFuelPHP の開発に参加しており、ユーザも徐々に増え、品質や安定度も急激によくなってきています。本書は、そのFuelPHP の2012 年6 月にリリースされた最新のバージョン1.2 に関する日本初の入門書です。 本書のテーマは、フレームワークを使ったことのないPHP ユーザの方

                                                                  はじめてのフレームワークとしてのFuelPHP
                                                                • Laravel 製アプリケーションに対する自動テストでなにをどうテストすればいいか - Qiita

                                                                  この記事について 自分の所属するチームに、自動テストを書いたことがないメンバーが加わったとき、ガイドラインとなるようなドキュメントがほしいなと思っていたので、書きました。どうせなら他のチームでも使いたいので、ドメインはぼかして汎用的になるようにして公開します。独自のベストプラクティス的なものですが、これまでのチームではわりとどこもこれに近くうまくいっていたので、汎用的に使えるんじゃないかと想像します。 はじめに 環境 Laravel: 5.8 以上 PHP: 7.0 以上 PHPUnit: 7.0 以上 いちおうバージョンは書きましたが、あまり関係はないです。 基本方針 基本方針は、自分の経験上これがいちばんコストパフォーマンスがいいと思っているガイドラインですが、自分はベンチャーやスタートアップ企業で、スピード重視の文化に身を置くことが多いため、テストは最低限にして、素早くリリースするの

                                                                    Laravel 製アプリケーションに対する自動テストでなにをどうテストすればいいか - Qiita
                                                                  • Chef + VagrantによるPHP5.3 + MySQL + nginxの開発環境 | Engine Yard Blog JP

                                                                    2013/6/1に大阪、産業創造館で開催されたPHPカンファレンス関西2013にスポンサーとして参加しました。3年目を迎えた関西PHPユーザーグループによるカンファレンスは今年も大盛況のうちに幕を閉じていました。今回はEngine Yard CloudとEngine Yard Localでも利用されているChefとVagrantについて入門的な内容で講演を行いました。 ChefとVagrantを活用した開発環境 今回、Chefの利用経験も無い方向けにVagrantについてお話しましたが、多くの方から「便利そう」「すぐに使いたい」という感想をいただきました。VagrantはVirtualBoxにインストールしたLinuxにさまざまな設定を行なってFTPやSCPなどをしないですぐに開発が出来る所までを自動で設定します。いわば最も面倒な方法で作る最高の開発環境をコマンド一発で構築するツールです。

                                                                    • PHP CS Fixer v2 でもっと快適PHPライフ - FLOG SPLASH

                                                                      2014年に書いた PHP CS Fixer の記事 が今でも読まれているのですが、2016年末にリリースされた PHP CS Fixer v2.0 で後方互換のない変更が多く入っており情報が古くなっているため、改めて v2 について書いてみようと思います。なお現時点での最新版は v2.1.2 となります。 fivestar.hatenablog.com PHP CS Fixer とは PHP CS Fixer は PHP コードをコーディング規約 (CS = Coding Standards) に沿って補正してくれるライブラリです。歴史を辿ると、元々は Symfony のプロジェクトリードの fabpot 氏が作成したもので、 PSR-½ 、あるいは Symfony のコーディング規約 に沿ってコードを補正する機能が実装されています。 github.com チームでコードを書くときはコー

                                                                        PHP CS Fixer v2 でもっと快適PHPライフ - FLOG SPLASH
                                                                      • Selenium + PHPUnitで簡単エンドツーエンドテストを実現する

                                                                        ここではSeleniumとPHPUnitを使って簡単にスモークテストを実現する方法を解説します。 基礎的な内容ですが、復習ということで。 下準備FirefoxにSelenium IDEをインストールするSelenium Serverを導入する(※ダウンロードへの直リンクはこちら)どちらもhttp://seleniumhq.org/download/からダウンロード可能です。Selenium IDEを使ったテストケースの作成もうこれはあちこちのサイトで説明されているので特に説明の必要はないでしょう(笑) 簡単に言えば、Firefoxを起動し、さらにSelenium IDEをたちあげて、操作を記録していけば良いだけです。 参考サイト SeleniumでWebアプリケーションテストを自動化 (ちょっと古いですが内容は役にたちます)Selenium IDE日本語ドキュメントテストケースを自動で実行

                                                                          Selenium + PHPUnitで簡単エンドツーエンドテストを実現する
                                                                        • 第二新卒が1年でフルスタックエンジニアへ!チームラボエンジニアリングのスキルアッププログラムが素晴らしい - Qiita Zine

                                                                          2018年4月にチームラボエンジニアリングへ入社。2018年5月以降は、SNSサービス、大学サイトなどの環境構築、設計、実装を担当。2019年4月からは大規模予約サービスのオンプレミスからAWS移行プロジェクトに参画している。 転職しつつ、学び直す道へ ──尾上さんがチームラボエンジニアリングに転職を考えたキッカケはどんなものだったのですか? 尾上あづささん(以下、尾上):前職ではPHPを使ったサービスの運用・保守を行っていました。ただ、私はもっとコードを書きたくて。ゼロからモノを作る仕事がしたいと思ったことが転職のキッカケですね。 ──運用・保守のプロジェクトに携わっている場合、ゼロから設計したりするケースは稀ですよね。 尾上:そうですね。私が携わっていた領域も実装とテストがメインでした。例えば、インフラは他のエンジニアの方が用意してくださっていたり、お客様の交渉も別の方が行っていたり。

                                                                            第二新卒が1年でフルスタックエンジニアへ!チームラボエンジニアリングのスキルアッププログラムが素晴らしい - Qiita Zine
                                                                          • MobileDetect, PHP mobile detection class

                                                                            🤝 Supporting If you are using Mobile Detect open-source package in your production apps, in presentation demos, hobby projects, school projects or so, you can sponsor my work by donating a small amount 👍. I'm currently paying for hosting and spend a lot of my family time to maintain the project and planning the future releases. I would highly appreciate any money donations. Special thanks to: th

                                                                            • Composerの作者に会った (PHP勉強会 番外編レポート) #phpstudy #composerphp

                                                                              Composerやmonologの作者である@seldaekが来日するということで、2016年7月22日にPHP勉強会の番外編が開催されました。 PHP勉強会@東京〜番外編〜 みなさまお疲れ様でした! #composer #php #phpstudy #eventdots pic.twitter.com/wvKHgpDNGp — しめじ (@TAKA_0411) 2016年7月22日 動画 @seldaek の発表 発表資料はこちら: Composer in 2016 #phpstudy #eventdots pic.twitter.com/h4UeksQGvJ — Hiraku (@Hiraku) 2016年7月22日 Composerを使い込んでないとわからない内容もあったと思うので、勝手に補足解説しようと思います。 composerのエコシステムについて Composerの中央リポジ

                                                                                Composerの作者に会った (PHP勉強会 番外編レポート) #phpstudy #composerphp
                                                                              • 自分流 Laravel 4 アプリケーションアーキテクチャ

                                                                                Laravel Advent Calendar 2014 の 9 日目です。 今年の Advent Calendar では、Laravel 5 リリース目前ということで、Laravel 5 の話題が多いのですが、それは他の方にお任せして、ここでは、Laravel 4 でのアプリケーション実装について書いてみます。 Laravel は自由度の高いフレームワークですので、アプリケーションも自由な構成にすることができます。ただ、この「自由さ」が故に、どういう構成が良いのかというのが悩ましい点でもあります。 このエントリでは、私が実際に構築したプロダクトをベースに構成例をご紹介します。Laravel アプリケーションを構築する上での参考になれば嬉しいです。 1. ディレクトリ構成 まずは、大枠のディレクトリ構成から。アプリケーションや開発環境用の Vagrantfile やプロビジョンファイルなど

                                                                                • PHPにおける例外クラスの設計考察

                                                                                  この記事はPHP Advent Calendar 2017の2日目です。 ここ最近、本業のほうが死ぬほど忙しく、すっかりブログを書いていなかった@Hirakuです。 だいぶ前のことですが、今年のPHPカンファレンス福岡で例外の話をしてきました。 この時の発表では例外に関する概要が主だったので、例外クラスそのものの設計について補足を書いてみることにします。 例外のある世界観 PHP7ではいくつかのエラーが例外と同じ挙動を示すようになり、エラーではなく例外機構を使う言語に様変わりしました。 例外というのは、かなり侵略性の高い概念であり、例外のある世界では以下の前提に立つことが暗黙のうちに強要されます。 どこでも例外が発生する可能性がある 例外によって中断されても、ソフトウェアが不適切な状態にならないように保証するのは各プログラマの責任(例外安全) たとえば、以下の関数で例外が発生する可能性があ

                                                                                    PHPにおける例外クラスの設計考察