PHPカンファレンス北海道 2016 発表資料 20160416
先日別のチームから、 「PHPで作成したWebアプリの速度が遅いので助けてくれー」 という相談を受けた。 対応したものの、結構時間がかかって面倒だったので、 今後こういった問題が起こった時に使えるよう、チェックリストをまとめてやった。 基本的な内容だけど、 このチェックリストの内容をやってみて、それでもダメなら相談しなさい、 と伝えておくことで相談を減らすフィルタとして働いてくれるはずだ。 PHPプロジェクトに限らず、バックエンドでデータベースを使用している Webアプリのプロジェクトなら試す価値のあるものが多いはず。 調査や対応方法の手軽さ順で並べるとこんな感じ: Webブラウザのデベロッパーツールでレスポンスを計測する Webサーバ(Apache)のリクエスト時間をログに出力する ログ解析ツールでURL毎の付随リクエスト数を確認する データベースのスロークエリログを出力する プロファイ
PHPで実際にテスト駆動開発をやってみるチュートリアル動画です。空のプロジェクトから開始し、実際にどうやって進めて行くか、テストの成功とか失敗がどのように見えるか、非常にシンプルな例をもとに紹介しています。 この動画自体はかなり前に撮ったものなのですが、せっかくなのでブログにもアップ・・・!動画の時間が長い割に内容が若干薄いですがご愛嬌ということで。 TDDは普段苦痛なテストを楽しくさせてくれるからいいよね。実際にプロジェクトが進むごとに安心感も抜群に上がる。最近はビヘイビア駆動開発なんてのもあるし、PHPでもBehatとかCodeceptionとかそれを可能にするものがあるのでまた紹介できればと思います。 スペック情報 動画で使っているもののスペック情報です。 Sublime Text 3 (テキストエディタ) PHP PHPUnit iTerm (ターミナルソフト) 参考動画 こちらの
TDD is dead. Long live testing.に触発されたわけではないがけど。 ヾ(・ω<)ノ" 三三三● ⅱⅲ コロコロ♪ 関連記事: behat3とzombiejsでBDDに挑戦(1) behat3とzombiejsでBDDに挑戦(2) behat 3.0 とzombiejsでBDDに挑戦(3) behat 3.0とphantomjsでBDDに挑戦(4) behat 3.0とJenkins CIでBDDに挑戦(5) behatとChrome HeadlessでBDDを実践(6) 昔からTDDを念頭にものを作ってきた。 のだが、「テストコードを書く」という行為に納得感がなく、手法をあれこれ変えてみたりしていた。 そんな折、自動テストについて調査する機会があり、そこでBDDという手法があることを知った。 BDDの詳細についてはこちらを: エンドツーエンドテストの自動化は C
「PHPの開発環境を構築する」シリーズの第4回です。今回はXAMPPのPHP環境にPHPUnitをインストールし、またEclipseからPHPUnitのテストを実行できるMakeGoodというプラグインを組み込みます。そして実際にテストを実行してみます。 (2015年3月3日修正:Windows 8.1+Pleiades All in One Eclipse 4.4 Lunaの環境とComposerにてインストールした直近の環境に合わせて、大幅に修正しました。尚、画面のキャプチャの多くは2013年11月のままです。実際と異なる場合があります。) 前提条件 本稿は「PHPの開発環境を構築する(その1):「Pleiades All in One」のインストール」に記載した通りに設定しました、以下の環境を対象に記載しております。各ソフトウェアのバージョンが異なる場合は動作が異なると思いますのでご
新言語 Hack とは こんにちは、新言語 Hack が Facebook より OSS としてリリースされましたね。 詳細は以下の通り。 https://code.facebook.com/posts/264544830379293/hack-a-new-programming-language-for-hhvm/ 新言語 Hack は HHVM 向けの開発言語で静的型付き言語の性質を取り入れ PHP での素早い開発を実施し、PHPとの互換性があります http://hacklang.org/ http://hhvm.com/ HHVM (HipHop Virtual Machine for PHP) とは、Facebook が OSS で開発している PHP 用の JIT コンパイラです。 HHVM は PHP のコードをダイナミックにバイナリコードへと変換することで高速実行の実現を目
さくらのVPSでFuelPHPを動かそうと思って oil create PROJECT_NAME とコマンドを打つと Submodule path 'fuel/packages/parser': checked out '634204f87047fdb2d5957b74a7c24a4faea33cc2' PHP Fatal error: Exception thrown without a stack frame in Unknown on line 0 Fatal error: Exception thrown without a stack frame in Unknown on line 0 とエラーが出てしまう。 同じ事をAmazonのEC2でやると Submodule path 'fuel/packages/parser': checked out '634204f87047fd
PHPカンファレンス2013でPHP開発環境をVagrantで作る発表を行ったのですが、具体的なVagrantfileが欲しいという声を頂いたので、GitHubに公開しました。 ご自身で構築するベースになれば良いと思うので、どう作れば良いの?と言う方は参考にしてみて下さい。 なお、このリポジトリの Vagrantfile は、開発PC内の VirtualBox 上で開発環境として動かすことを想定しています。セキュリティについては考慮されていないのでご注意下さい。 vagrant-lapp-sample https://github.com/shin1x1/vagrant-lapp-sample このリポジトリは、PHPアプリケーション(CakePHP)をイメージしています。構成は以下です。 CentOS 6.4 Apache 2.2 PHP 5.4 PostgreSQL 9.3 phpPg
こんにちは、中川です。 ここ1・2年ですが、私の担当するプロジェクトでは、 PHPよりもJavaScriptの開発が多い状態が続いております。 JSのプロジェクトを重ねるにつれ、開発環境も段々と整理されてきましたので、 一旦、最近のJS開発で利用しているライブラリやツールなどをまとめてみました。 フレームワーク ●Backbone.js http://backbonejs.org/ JavaScriptのMVCフレームワーク。 何も使わない(もしくは我流)よりは、これを使って欲しいと思えるフレームワークです。 利用者が多く日本語情報も豊富にあるのと、フレームワーク自体が1500行程度と軽量なため、学習コストを低く抑えることができます。 ●AngularJS http://angularjs.org/ データバインディングを備えたフレームワーク。 高機能なテンプレートや、DIの仕組み、ルーテ
彼此数年ほど手がけているMongoDBベースのPHP製WEBフレームワーク『Cockatoo』 いくつかのサービスで数年間、安定稼働を続けているのでそろそろ自信がついてきました。 本来は社内で広めて行きたいのだけど諸般の(非技術的な)事情から暫く身動きが取れない状態が続いていて そろそろ活路を社外に求めなきゃならないかなと。。 メインページ http://cockatoo.jp/wiki2/main 特徴 大体、上記メインページに書いてあるのですが、わざわざ書かなかった事を少し。。 まず、このフレームワークの設計理念には、それなりにWEB開発・運用に関わって来た私のエンジニアとしての思いが詰まっています。 『こんな風にWEBサイトが開発できたら良いのに!!』 『私だったらこんな感じでWEBサイトの運用をしたい!』 結果、かなりの部分を実現できたと思っています。 特に開発側は9割方出来たかな
大変お待たせしました。FuelPHP の入門書 『はじめてのフレームワークとしての FuelPHP』 がついに7月2日に発売されることになりました。待った甲斐があったと思われるような完成度の高い書籍に仕上がりました。 この本は、以下のようなことが当てはまる人に自信を持ってお薦めします。 FuelPHP に興味があるが、Web の情報は断片的で、しかも正確なものかどうかもよくわからなくて困る FuelPHP の全体像や考え方を手っ取り早く知りたい また、以下のようなことが当てはまる人にも是非お読みいただきたいです。 PHP は使ってるけど、フレームワークって何?Smarty とどう違うの?まだ使ったことがないので知りたい PHP 使ってるけど、どうにもレガシーでこの会社大丈夫か?と疑問を感じる 使ってるフレームワークがオレオレフレームワークでしかも実装がイケてない。あと、他人がメンテできず困
iPhone / iPadの画像が90度回転してしまっているのをサーバ側で直す(Exif + Orientationタグ + ImageMagick + PHP) iPhone / iPadは、縦に持って写真を撮った場合でも、内部的には横長のJPG画像+ExifのOrientationタグで回転角度を埋め込んで保存しているようです。 ではこの画像を取り出して表示・使用する場合にどうなるかというと、Orientationタグを見て縦に表示するか否かは表示するソフトウェアによる、ということになります。 しかし、投稿画像がユーザー環境によって見え方が変わるというようなことになると、これはちょっと避けたいと思うわけです。
April 1, 2013Say Hello to Boris: A Better REPL for PHP As web developers, we know the importance of the JavaScript console provided by the browser in testing out code snippets. We don’t need to write an entire HTML page and JavaScript code just to verify the functioning or logic of a small routine we wrote. Instead, we simply run the expressions in the console and immediately see the results. Simi
session_cache_limiter("none");と誰かが書いていたので、マニュアルを見てみたのですが、noneなんてパラメータはない。 しかし、検索すると出てくるので、どういう挙動になるのかと調べてみました。 規定のパラメータ(public・private_no_expire・private・nocache)だと、 start_session()を行ったときに、Cache-Control:ヘッダが送られます。 送られる内容については、 http://php.net/manual/ja/function.session-cache-limiter.php を参照してください。 PHPのソースを読んだところ、public・private_no_expire・private・nocache以外の 場合は、ヘッダが送られないとなっています。 <?php session_cache_li
はじめに 本連載では、PHP上で動作するアプリケーションフレームワークであるsymfonyでアプリケーション開発を行う方法について紹介します。初回である前回は、symfonyの特徴を紹介し、実際にsymfonyをインストールして簡単なアプリケーションを作成するまでを紹介しました。第2回となる今回は、より実践的なアプリケーションの例として「掲示板アプリケーション」の作成を通じて、データベース連携などの基本的な手法について紹介します。 対象読者 PHPの基本構文は一通り理解しているが、フレームワークを利用したことはないという方を対象としています。 必要な環境 symfonyはPHP5とWebサーバがインストールされている環境で利用可能です。本稿ではWebサーバとしてApache2.2を、OSにWindows XPを採用し、アプリケーションを作成していきます。また、データベースとしてMySQLを
OpauthはPHP向けの認証ライブラリです。抽象化することで多様なプロバイダーに容易に対応できます。 Webサービスで認証を用意すると言っても今は多様な技術が存在します。単なるID/パスワードに限らず、OpenIDやOAuthもあります。サービスプロバイダーごとに実装も若干変わったりします。そうした認証技術を統合して使えるのがOpauthです。 デモです。 Facebook認証です。 問題なく認証できました。各種データも取得できているのが分かります。 こちらはGoogle認証です。 こちらもユーザプロフィール含めて取得できています。 最後はTwitterです。 はい、問題ありません! OpauthはRubyの認証ライブラリOmniauthにインスパイアされて作られており、認証部分を抽象化することでプロバイダーを切り替えて容易に様々なサービスに対応できるようになっています。技術的にはOpe
http://nicomp3.com/ニコニコ動画からMP3を生成するサイト作ったときのお話。 環境PHP5.3くらいMysqlドメインはお名前.comなぜ作ったか自己満足(おぃすべてのニコ厨にMP3を・・・ 完成までの流れPHPでニコニコにログインとダウンロードのソースを改造自分で書いてもよかったがネットに落ちているので参考にしたhttp://istb16.wordpress.com/2011/09/11/niconico_download_for_php/(1時間くらい)↓さくらのVPS(4G)のCentOsの環境を構成(3時間くらい)↓ニコニコのAPIを発見する。これを利用してサムネイル等とってきてるhttp://ext.nicovideo.jp/api/getthumbinfo/ニコニコID↓動画を変換するためにffmpegをサーバーにぶっ込むそしてPHP側から利用(1日目)↓フォ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く