タグ

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

  • 「先取り!PHP 7 と WordPress」を発表しました

    今年の 11 月にリリース予定の PHP 7 上で、WordPress を動かすとどうなるか、ということをデモを交えて紹介しました。 デモでは、9 年間稼働しているブログ(Shin x blog)のコードを PHP 7 で動かしたりしてみました。そのままは動かないので、エラーメッセージを表示して、修正して、という作業を壇上で行い、最終的には表示するところまで進めました。PHP 7 への移行作業の雰囲気が伝われば嬉しいです:) WordPress では、PHP 7 の新機能よりも、パフォーマンスアップの方が恩恵が大きいと思うので、PHP 5.6 との比較も行っています。 WordCamp Kansai 2015 雑感 私は、2 日目の夕方のセッションだったので、午後に会場入りして、いくつかセッションを見ていました。そこで感じたのが以下でした。Web エンジニアが見て面白いセッションがいくつ

  • 一冊まるごと Laravel な「Laravelエキスパート養成読本」が出ます

    Laravelエキスパート養成読」が、2015/04/21に出版されます。このの執筆に参加しました。 昨今、話題のフレームワーク Laravel ですが、ようやく日語での書籍が登場します。これまで、和訳された電子書籍はあったのですが、紙の書籍としては、国内初となります。 目次 目次は、下記のようになっています。バージョンは、Laravel 4 をベースにしており、新機能紹介として、Laravel 5 の内容を加えています。 Chapter1. Laravel をはじめよう Chapter2. MVC モデルが基礎からわかる Chapter3. IoC コンテナ、ファサード、サービスプロバイダ、Eloquent Chapter4. Laravel 5 新機能紹介! Special. PHP フレームワーク最新事情 Chapter5. 実践!REST API アプリケーション La

    urouro_n
    urouro_n 2015/04/02
    やっとLaravelの本が
  • CakePHP2 アプリケーションを Heroku で動かす設定

    CakePHP2 アプリケーションを Heroku 上で動かす設定についてです。 以前のエントリにも書きましたが、Heroku で Web アプリケーションを動かす際に重要なのは、Web サーバ自体(Heroku では、Dyno)に、アプリケーションの状態(データ、セッション情報、ログ等)を保持させないということです。 Heroku の Dyno は、デプロイの際や、定常的な再起動により、破棄されるため、記録されたファイルは消えてしまいます。よって、こうしたデータファイルは、アドオンなど外部に記録する必要があります。 Heroku では、アドオンを活用するのがポイントですので、ここでは、主に CakePHP アプリケーションからこうしたアドオンと連携する方法を見ていきます。 Environments Library as a plugin まず、開発環境と Heroku 環境で設定値を切り

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

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

  • PhpStorm から Vagrant VM の PHP アプリケーションをリモートデバッグする(Web & CLI)

    Home > Laravel | PHP | PhpStorm | Vagrant > PhpStorm から Vagrant VM の PHP アプリケーションをリモートデバッグする(Web & CLI) PhpStorm から Vagrant で構築した VM の PHP アプリケーションをリモートデバッグする方法です。Web アプリケーションだけでなく、CLI アプリケーションでもリモートデバッグできるように設定していきます。 VM スペック 192.168.33.41 を private network で設定 PHP + Xdebug がインストール済み ホストと VM は、synced folder でディレクトリを共有(/path/to/src -> /share) 0. Xdebug によるリモートデバッグの仕組み リモートデバッグを設定する前に PhpStorm と Xd

  • Laravel の Queue で非同期処理を実装する(beanstalkd / IronMQ / SQS)

    Home > AWS | Laravel | PHP > Laravel の Queue で非同期処理を実装する(beanstalkd / IronMQ / SQS) Laravel で実装されている Queue について見てみました。 Laravel では Queue を使うことで、時間がかかる処理や、時間差で実行したい処理を非同期で実行することができます。 Laravel 4.2 の Queue では、以下の 5 つのキュードライバをサポートしています。 sync Beanstalkd Amazon SQS IronMQ Redis ここでは、sync、Beanstalkd、IronMQ、Amazon SQS について試してみました。 Laravel での設定 Laravel で Queue を使うには、app/config/queue.phpにて、利用するキューエンジンの選択、設定を

  • 「開発現場で活用するVagrant」を発表しました

    JAWS-UG三都物語 2014 にて「開発現場で活用するVagrant」という発表を行いました。 Photo By Yuko Oshima 5 つトラックがあるなか、テクニカルトラックでの発表でした。開放感を感じる会場で、快適にセッションを行うことができました。 発表内容 Vagrant を現場で活用していく上で参考になる情報を、と考えたところ、やはり実際に動くデモが良いと思い、デモを中心にセッションを行いました。 発表資料は、以下です。 デモで利用した Varantfile などは、下記で公開しています。 https://github.com/shin1x1/vagrant-demo-20140705 デモでは、同じ PHP アプリケーションについて仮想環境やプロビジョニングツールを変えて構築を行いました。(実際に一からコードを書く時間が無かったので、できあがったものをお見せする形でし

  • 「PHPコードではなくPHPコードの「書き方」を知る」を発表してきました

    PHPカンファレンス関西2014で「PHPコードではなくPHPコードの「書き方」を知る」を発表してきました。 写真提供:久岡写真事務所 別トラックに人気セッションがひしめく中、多くの方に聴いて頂き、ありがとうございましたm(_ _)m 発表内容 PHP 中級者(中級がどこかというのはありますが)を目指す初心者の方を対象に、FizzBuzz のコードを、関数にまとめて、クラス化するというのをライブコーディングで行いました。 また、関数にまとめた段階で、自動テストを書いて、実行結果を目で確認するのではなく、テストを実行して確認するというスタイルを取りました。 発表資料は以下です。 コードを書きながら進めていく形なので、資料だけでは少し伝わらない部分があるかもしれません。 デモで書いた PHP コードは、GitHub で公開しています。Sample1, Sample2 とディレクトリが分かれてい

    urouro_n
    urouro_n 2014/07/01
  • Heroku で作るスケーラブルな PHP アプリケーション

    第16回関西PHP勉強会で、「Heroku で作るスケーラブルな PHP アプリケーション」という発表をしてきました。 発表資料 Heroku でちゃんと動く PHP アプリケーションを作ると、自然とスケーラブルな構成になりますよ、という内容です。 会場でも、Heroku 自体は知っているが、まだ使ってはいないという人が多かったので、細かな Tips は省いて、こういった構成でやりますよというイメージをお話しました。 実際に構築する上での Tips などは、また別の機会に話してみたいです。 サンプルアプリケーション サンプルアプリケーションとして、簡単な画像アップロードサイトを Laravel 4.2 で作りました。 https://github.com/shin1x1/laravel-on-heroku アプリケーションデータは、以下のアドオンへ保存するようにしています。画像ファイルは、

  • PHP で配列を走査して処理するのは、for / foreach だけじゃない

    PHP で配列の要素にアクセスして、処理を行うには、for や foreach を使うのがおなじみです。 この方法でも良いのですが、PHPには、それ以外にも配列を走査する関数やライブラリがあります。ここでは、配列を走査して処理を行う方法を見てみましょう。 サンプル仕様 このエントリで以下の配列を処理対象とします。array.phpで保存されている想定です。 <?php return [ [ 'id' => 1, 'year' => 1993, 'name' => 'Harada', ], [ 'id' => 2, 'year' => 2001, 'name' => 'Kato', ], [ 'id' => 3, 'year' => 2009, 'name' => 'Aoyama', ] ]; この配列について処理を行います。 配列内に連想配列が格納されており、nameとyearというキーを

    urouro_n
    urouro_n 2014/06/18
  • Mac OSX をクリーンインストールしてからの環境構築メモ

    Macbook Air の OS をクリーンインストールしたので、OS 起動後に行った環境構築のメモです。 1. OSX 環境設定 OSX 関連の設定は、以前に書いた下記エントリの内容で行います。 下記は Moutain Lion のものなので、若干、設定項目の表記や位置が異なりますが、概ねこの通りで。 http://www.1×1.jp/blog/2012/06/macbook_air_system_preferences.html 2. Homebrew、コマンドラインツール、XCode インストール アプリは、Homebrew cask と Brewfile を使ってインストールしたいので、Homebrew をインストールします。 $ ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

    Mac OSX をクリーンインストールしてからの環境構築メモ
    urouro_n
    urouro_n 2014/04/25
  • Mac で Vagrant を GUI で操作できる「VagrantX」をリリースしました

    Shin x blog Advent Calendar 2013 の最終日です。 12/1 から毎日書いてきた Shin x blog Advent Calendar 2013 ですが、いよいよ今日が最終日です。 今日は、クリスマスということで、ささやかながらちょっとしたプレゼントを用意してみました:D VagrantX GUI で Vagrant が利用できる VagrantX というツールをリリースしました。 http://shin1x1.github.io/vagrantx/ Vagrant は、とても良いツールなのですが、いかんせんターミナル(黒い画面)で操作するものなので、それに慣れていない人にとっては、少し敬遠されている面があります。Vagrantfile を自分で書くような人はターミナルでどんどん使うべきなのですが、用意された Vagrantfile をただ使うだけであれば、

  • 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

    urouro_n
    urouro_n 2013/12/24
  • 個人事業から法人化した理由

    Shin x blog Advent Calendar 2013 の 19 日目です。 2000年に個人事業として1×1を開業しました。それから 5 年後の 2005 年に有限会社として法人化(法人成り)を行いました。(その後、組織変更を経て、現在は株式会社です。) 個人事業から法人化した経緯や理由について書いてみます。 法人化への思い 当時、受託開発をメインに行っていました。仕事を受注して、家でこなすというスタイルが多かったのですが、仕事上で法人格を要求されることはなく、個人事業でも困ることはありませんでした。(今にして思えば、その時点で選別されていたのだと思います。) 開業した頃はとにかくい扶持を稼ぐのに必死で、法人化など考えもしなかったのですが、ある程度、売上が立つようになると、「次のステップ」というのを考えるようになりました。 なんとなく、次のステップとしての法人化を意識しつつ、

    urouro_n
    urouro_n 2013/12/20
  • ざっくり分かる Vagrant 1.4 / Docker Provisioner

    Shin x blog Advent Calendar 2013 の 10 日目です。 Vagrant 1.4 がリリースされました。Docker Provisioner を中心に新機能をざっくりと見てみました。 ダウンロードページの変更 さあ、1.4 をダウンロードしよう、と今までのダウンロードページに行くと 1.4 のリンクがありません>< 新しいダウンロードページからダウンロードしましょう。 Download Vagrant – Vagrant Docker Provisioner Docker 対応として Docker Provisioner が追加されました。 このプロビジョナを使うと Docker 自体のインストールが自動で行われ(!)、その後、docker pull や docker run を実行することができます。 下記の Vagrantfile では Docker Pr

  • エンジニアは独立した方が良いのか?

    Shin x blog Advent Calendar 2013 の3日目です。 エンジニアを目指して新卒で就職して早5年。とにかく仕事を覚えたい、先輩に追い付きたい、スキルを上げたいとがむしゃらに開発に没頭してきた。そろそろ仕事はひと通りこなせるようになり、自分がリーダーとして参加するプロジェクトも増えた。 充実した毎日ではあるが、気が付くと自分が会社の中では一番のエンジニアとなっていた。 自分では分かっている。会社の中では一番かもしれないが、外に目を向けると、自分よりすごいエンジニアは山といることを。 「そろそろ、次に進む時なのかもしれない。」 転職すべきなのか、はたまたいっそのこと独立して起業すべきなのか。 といった事は、わりと良くある風景なんだと思います。 起業してかれこれ13年、なんとかやってこれたので、こういった状況の人から相談を受けることがあります。そこで、私自身がこれまでや

    urouro_n
    urouro_n 2013/12/05
  • 「キャラ立ちしたエンジニアになる!」を発表してきました( #DevKan )

    決断〜Decision〜 今回のテーマは「決断〜Decision〜」でした。 スピーカーの依頼を頂いた際にテーマを聞いて、内容を色々と考えたのですが、私自身はそれほど大それた決断をしてきたわけではないので、分かりやすい決断として起業について少し触れました。 スライドにもあるとおり、私にとっての起業は生活する糧を稼ぐための手段であり、またやってみたいことの一つでした。正直、それほど大きな決断だとは思っていませんでした。 もちろん、いま考えるとこれは大きな決断だったと思うのですが、それはあくまで結果論で、決断の当の大きさというのは、その時には分からないものなのかもしれません。 キャラ立ちする キャラ立ちしましょう! スライドを少なく 実は、今回スライドを少なくして、話すということにチャレンジしてみました。 理由は3つです。 まず、発表スライドを作っていると、どうしてもあれもこれも入れたくなっ

    urouro_n
    urouro_n 2013/11/20
  • 「Composer 再入門」を発表してきました( #KOF2013 )

    2013/11/8, 9に大阪南港で開催されたKOF(関西オープンフォーラム)2013にて「関西PHP勉強会」のセッションを行いました。 今回は、いまやPHPerの必須ともいうべきComposerをテーマにしました。その中で「Composer 再入門」を発表してきました。 Composer再入門 この発表では、Composer の基的な使い方を紹介しています。自分でライブラリを公開する際の内容は @slywalker さんが発表されています。 Composer を使うこと自体は簡単なので、基的なところさえ知っておけば、特に問題は無いと思います。 ただ、今回の発表や先日行った Vagrant ハンズオンの際に感じたのですが、ターミナル操作の経験が無い人には、取っ付きづらいツールかもしれません。Composer を使わなくても、ZIP ファイルを直接ダウンロードすれば、フレームワークやライ

  • Twilio をはじめるのに知っておくと良いこと6つ(Twilio API勉強会@大阪)

    Twilio 盛り上がってきていますね。電話という身近でありながらシステムとして扱うには複雑な仕組みが必要なものを単純な API で操作できるというのは面白いサービスです。 先日大阪で行われたTwilio API勉強会@大阪にて、PHP から Twilio を触ってみるハンズオンセッションを行ないました。Twilio を使うと簡単な PHP コードで、自分の携帯を鳴らしたり、携帯から電話をかけてみたり、簡単に試すことができるので、これはハンズオンとしてもなかなか楽しかったです。 お声がけいただき、ありがとうございましたm(_ _)m 発表資料はこちら。 ハンズオンの手順は、Gist に書いています。ここでは、Composer を使って、twilio-phpPHP版のTwilioライブラリ)をインストールしています。 https://gist.github.com/shin1x1/7006

    Twilio をはじめるのに知っておくと良いこと6つ(Twilio API勉強会@大阪)
  • 1