Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
PHP with 
Visual Studio
目次 
・1. 自己紹介 
・2. Visual Studio の素晴らしさ 
・3. PHP Tools for Visual Studio 
・4. ローカル(?)環境の構築 
・5. リモートデバッグ環境の構築
(1/5) 自己紹介
自己紹介 
・@kobayan_tokyo 
・http://blog.clock-up.jp/ 
・元ゲーム屋、現フリーランス 
 ・業務系ツール開発 
 ・ときどき講師 
・好きな言語:C++
ときどき直面するフリーランスの問題 
「フリーランス」はワーキングプアと混同される。 
→ 端的に言うと癪。説明するのはめんどい。
ときどき直面するフリーランスの問題 
■ソリューション 
会社を作る。 
→「会社を経営しています」と言える。 
→説明が省ける。 
■法人化の方法 
知り合いから教わります。
余談:新宿の良いところ 
・24時間飯が食える 
・24時間銭湯に入れる 
・24時間電化製品が買える(ドンキホーテ) 
・24時間ジムに行ける(エニタイムフィットネス) 
・24時間明るい
(2/5) Visual Studio 
の素晴らしさ
Visual Studio の時代再来の予感 
Microsoftが「.NET」をオープンソース化&クロスプラット 
フォーム化、さらに無料版「Visual Studio Community 
2013」も公開 - GIGAZINE 
http://gigazine.net/news/20141113-microsoft-net-framework/
Visual Studio の素晴らしさ 
端的に言うと 
初心者に優しい
インストール一発 
・ポチポチするだけ
プロジェクト作成もシンプル 
・ポチポチするだけ
画面作成もシンプル 
・ポチポチ配置 
・部品をダブルクリックでイベン 
ト関数作成。
MSDN(リファレンス)見やすい 
ネイティブアプリとしてMSDN 
が提供されている。 
・ネットワークが必要ない 
・当然ネットワーク遅延が無い
むしろMSDN見る必要すらない 
・補完が最強に優秀
デバッグ機能が当然のように使える 
・設定なんて必要ない 
に決まってるじゃない 
ですか…
Visual Studio の素晴らしさまとめ 
・当たり前のことが当たり前にできる 
・初心者に優しい
初心者に優しい環境を… 
プログラミングそのものに触れる以前に 
環境構築で心が折れてしまうような環境はダメ
初心者に優しい環境を… 
初心者にマサカリが 
投げられるような世界は悪
初心者に優しい環境を… 
細かい知識の習得は 
プログラミングの楽しさに 
気づいてからで良いのです。
(3/5) PHP Tools 
for Visual Studio
Visual Studio が素晴らしいので 
Visual Studio で 
あらゆるコーディングを行いたい
Visual Studio extension 
・PHP Tools for Visual Studio … 激優秀 
・Ruby in Steel … バグ多すぎ 
・Python Tools for Visual Studio … ほぼ未検証
PHP Tools for Visual Studio 
https://visualstudiogallery.msdn.microsoft. 
com/6eb51f05-ef01-4513-ac83-4c5f50c95fb5 
http://support.devsense.com/viewforum.php?f=21 
・シンタックスハイライト 
・補完 
・ステップ実行等
サポートが速い&親切 
・顔の見える相手から 
スピーディーに返答が 
来るのは嬉しい。 
・バグ修正パッチもす 
ぐ作ってくれる。
(4/5) ローカル(?)環 
境の構築
Windows で PHP を触るときの環境 
・Visual Studio (with PHP Tools for Visual Studio) 
・VirtualBox 
 ・CentOS 
 ・PHP 5.5 
※PECL周りでWindowsとLinuxで差異がありすぎるので 
Windows上で動かすのは諦めた
PHPがVirtualBoxにあるので 
・当然ながら別ホスト扱い 
 ↓ 
・リモートデバッグの設定が必要
(5/5) リモートデバッ 
グ環境の構築
必要なもの 
# pecl install xdebug
xdebugによるリモートデバッグの仕組み 
・IDE側がポート9000で待ち受ける 
・PHP側からIDEのポートに対して接続を試みる。 
・随時デバッグ情報を送信。 
・当然ブレークポイントとかも効く。 
PHP xdebug 
IDE Browser
xdebugによるリモートデバッグの仕組み 
・IDE側がポート9000で待ち受ける 
・PHP側からIDEのポートに対して接続を試みる。 
・随時デバッグ情報を送信。 
・当然ブレークポイントとかも効く。 
VirtualBox 
PHP xdebug 
※VirtualBox側から 
 ホスト側に繋ぐ必要あり… 
IDE Browser
sshトンネル 
> ssh -R 9000:localhost:9000 kobake@virtualbox 
kobake@virtualbox's password: 
Last login: Fri Nov 28 13:57:31 2014 from 192.168.56.1 
[kobake@virtualbox ~]$ 
これでvirtualbox(CentOS)内での127.0.0.1:9000に対する接続が 
ホストマシン(Windows)側の9000番ポートに転送される。
xdebug設定 
xdebug.ini 
------------------------------- 
xdebug.remote_enable = On 
xdebug.remote_host = 127.0.0.1 
SSHトンネル経由で繋ぐのでこれで良いのです。
プロジェクト設定 
ちょっとクセはあります。 
この例でいうところの 
「www.datawatch.local」は 
virtualboxを指しています。
起動 
ブラウザが起動します↓
ブレークポイントも効きます
若干設定めんどくさかったですが… 
標準機能ではないので仕方ないです。
おしまい

More Related Content

PHP with Visual Studio