タグ

ブックマーク / www.1x1.jp (10)

  • PHP 5.6 に採用されるデバッガ phpdbg を使ってみた

    Shin x blog Advent Calendar 2013 の 21 日目です。 第 12 回関西 PHP 勉強会 にて、PHP 5.6 に採用予定の phpdbg をひと足先に PHP 5.5.7 で触ってみました。 phpdbg phpdbg は、gdb ライクな PHP 用のデバッガです。ブレークポイントを設定して、その時点のコンテキストを確認したり、ステップ実行などができます。 phpdbg | php debugger インストール PHP 5.6 から同梱される予定の phpdbg ですが、これ自体はすでにリリースされており、PHP 5.4 から利用することが可能です。インストールには、PHP のソースコードが必要になるので、PHP も ソースからインストールします。 $ sudo yum -y groupinstall "Development Tools" $ sud

  • PHP コードの整形はプログラマがやるべきことじゃない

    PHP には、PSR が策定されたおかげで、これをベースにコーディングスタイルがある程度整ってきました。 ここ近年開発がはじまったプロジェクトなら、PSR-1/2 をコーディングスタイルとして採用しているプロジェクトも多いのではないでしょうか。 せっかく採用したなら、実際に書くコードはできるだけこの基準に沿うようにしたいものです。ただ、ここにあまり手間をかけるのも末転倒です。そこで、手間をかけずに、コーディングスタイルに従えるような方法を模索してみました。 開発環境には、PhpStorm を使う前提です。 PhpStorm の PSR1/PSR2 ルール まず、PhpStorm の Code Style で、PSR1/PSR2 をルールとして設定しました。 プロジェクト毎に規定したいので、Scheme はProjectにして、set from...をクリックして、Predefined S

  • CentOS 6.5 に Docker をインストールしてみた

    Shin x blog Advent Calendar 2013 の 7 日目です。 いよいよ CentOS 6.5 から Docker がサポートされたということで、実際にインストールしてみました。 Vagrant で CentOS 6.5 環境 Vagrant で CentOS 6.5 環境を作ります。( CentOS 6.5 環境がある場合は不要です。) CentOS 6.5 の Box ファイルには、Opscode が提供している Bento プロジェクトのものを利用しました。 $ vagrant init opscode-centos65 http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_centos-6.5_chef-provisionerless.box $ vagrant up $ vag

  • PHP開発環境のサンプルVagrantfile

    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

  • Vagrantで作るPHP開発環境[実践編]をPHPカンファレンス2013で発表してきた

    (2013/10/09追記) PHP開発環境を構築するサンプル Vagrantfile をアップしました。 PHP開発環境のサンプルVagrantfile 第7回関西PHP勉強会で発表した下記の内容をベースに、より実践的な内容を追加しました。 PHPシステムの開発環境をVagrantで作ることを題材に、基的な流れをお話しました。 ポイントは、プロビジョニングにシェルを使う部分と、やはり synced_folder ですね。AWS上にも同じ環境を構築できる部分ももう少し深くお話したかったのですが、時間が足りませんでした>< また、Vagrantfile があるディレクトリ(vagrant upしたカレントディレクトリ)も synced_folder となっていて、仮想マシンでは /vagrant としてアクセスできるということも知っておくと便利です。これを利用するとChefのtemplat

  • Vagrantをはじめてみたい方へ「Vagrant入門ガイド」を書きました

    「Vagrant入門ガイド」という電子書籍技術評論社さんから出版しました。Kindle ストア と Gihyo Digital Publishing にて購入できます。 Vagrantは、まだエンジニアが中心に触っている状況ですが、いずれはWebデザイナーやコーダーの方など、サーバ構築を自分ではやらない人にも、制作するWebサイト、システムの動作検証を行う環境として利用する場面が増えていくと思います。 blog エントリなども多数あるのですが、断片的な情報も多く、また、Vagrant自身の進化が早いため、最新の環境だと上手くインストールできなかったり、動かないということがままあります。(このblogの過去エントリも。。。) もちろん、じっくりと調べていけば解決できる問題なのですが、できれば、はじめの一歩くらいは、まとまった情報が日語であると良いなと思い、書を書きました。 目次 書は

  • Vagrant を使うなら、VirtualBox 4.2.16 以降で

    VirtualBox 4.2.14 + Vagrant 1.2.2 の組み合わせで、正常に動作しなかった問題が、VirtualBox 4.2.16 で解決されたようです。 VirtualBox 4.2.14 + Vagrant 1.2.2 の組み合わせで、一部の環境にて vagrant up ができないという現象がありました。 $ vagrant up Bringing machine 'default' up with 'virtualbox' provider... [default] Importing base box 'precise32'... There was an error while executing `VBoxManage`, a CLI used by Vagrant for controlling VirtualBox. The command and std

  • 日本国内のパブリッククラウド集

    国内のパブリッククラウドをざくっと集めてみました。 クラウドがすっかり盛り上がってきました。新聞等ではいわゆるASP的なSaaSのクラウドが良く言われていますが、Webシステム屋としては IaaS / PaaS が気になります。 代表的なのは、Amazon EC2やGoogle App Engine、Azureの海外勢ですが、日国内でもパブリッククラウドが立ち上がってきています。 2010/07現在で、どういったパブリッククラウドが国内にあるかをざっと並べてみました。 ここもあるよ!これ間違ってるよ!等々あれば教えて下さいm(_ _)m 対象 「クラウド」を謳っているサービスは多数あるのですが、ここでは以下に限定しました。 Webサイト(サービス)構築目的 IaaS もしくは PaaS ユーザが任意にコントロールパネルでサーバ構成(リソース)を変更できる 急激なアクセスに備えてオート

  • PHP基礎文法最速マスター

    PerlRubyの文法一覧がとても良くまとまっていたので、便乗してPHPでもやってみました。 Perl基礎文法最速マスター – Perl入門〜サンプルコードによるPerl入門〜 Route 477 – Ruby基礎文法最速マスター 他の言語をある程度知っている人はこれを読めばPHPの文法を何となく理解できると思います。 間違い、不足等々あれば教えて下さいm(_ _)m バージョン PHP5.3系がリリースされていますが、ここではPHP5.2系を対象としています。 1.基礎 コードブロック PHPコードは「<?php」という開始タグから始まります。終了タグは「?>」です。HTMLPHPコードを埋める際は終了タグを使いますが、ライブラリのようにPHPコードのみを記述する際は終了タグを省くことが慣例となっています。 終了タグを省く理由について id:Kiske さんに解説頂いています。ありが

  • Google App EngineでCPU Timeを使い切った

    Google App Engine(GAE)でCPU Timeを使い切りました。 GAEは従量制のサービスで、あらかじめ設定した金額内で利用できるリソースが決まっています。これはQuotaと呼ばれていて、CPU、ネットワーク流量、保存データ、API呼び出し回数等々で制限があります。 よく言われる「GAE=無料」というのは、無料(課金しない)なら、そのQuotaが適用されるということです。 GAE+Pythonでとあるサイトの動作確認をやっていたところ、無料分のCPU Timeを使い切りました。 実際に使い切るとこんな感じになります。 サイト ブラウザでアクセスすると、どのページを見ても503が返ってきて、Googleのエラー画面が表示されます。 HTTPレスポンスヘッダは以下。 HTTP/1.x 503 Service Unavailable Date: Sat, 16 Jan 2010

  • 1