SlideShare a Scribd company logo
1 of 71
Download to read offline
「それ、PhpStormでできるよ」

株式会社nanapi 遠山 晃(@Vexus2)
自己紹介
遠山 晃
株式会社 nanapi エンジニア
最近はRuby, Objective-Cとか書いてます
(もちろんRubyMine, AppCodeで)
https://github.com/vexus2
PhpStormとは
JetBrains社が開発しているPHP用IDE
$99(Personal License)
$199(Commercial License)
兄弟製品いっぱい。
IntelliJ IDEA, RubyMine etc
㈱サムライズムが国内代理店
みなさん、エディタなに使ってますか?
なにつかってるの
PhpStorm
Vim
Emacs
Sublime Text
その他
それ、PhpStormでできるよ
「カッコいいカラースキーマが使いたい」
カラーテーマは2つ

DraculaとDefaultテーマの2種類
カラースキーマはたくさん

デフォルト以外にもWebからDL可能
http://www.phpstorm-themes.com/
「機能多すぎて覚えられない」
真・最強コマンドあるよ
「Search Everywhere」
Shift2回(覚えやすい!)
入力された文字列に対応するファイル、ア
クション、定数、設定項目などを全部表示
各機能のショートカットを覚えなくても、
とりあえずこれを押さえればおk
Search Everywhere
Search Everywhere
「指がVimに馴染んじゃってるんだよねぇ」
IdeaVimでできるよ
-

hjklなど各種移動
undo/redo, macro
Insert Mode, Visual Mode
/からの検索、:sからの置換
TextObject
一部の:setオプション

結構ちゃんと動く
「めんどくさい設定したくない」
設定わりと楽だよ

設定は全てGUI
変更が動的に見えてカスタマイズが楽
「Sublime Textみたいにコードフォー
マット掛けたい」
カスタマイズできるよ

インデント数やスペースの有無
改行位置やalignなど細かく設定可
「GitとかでTerminalとか行き来が面倒」
PhpStorm内でできるよ

Git操作は全てPhpStorm内で完結
PhpStorm内でできるよ
コミット前に
コードフォーマット

コード差分を見ながらCommit Message
PhpStorm内でできるよ

グラフも見やすく表示
内蔵Terminalあるよ

ちょっとした細かい作業やlog tail向け
「Sublime Text2の”Multiple

Selections”が

便利過ぎて離れられない」
それプラグインでできるよ

同一文言を動的に書き換え可能
「今使ってるエディタがフレームワークと相
性いいから乗り換えたくないんだよねー」
Symfony2
Symfony2 Plugin
http://plugins.jetbrains.com/plugin/7219

強力なコード補完
プロジェクト専用ビュー
Symfony2

serviceに登録されたパラメータを
コード補完してくれる
Symfony2

コンテナから取得したオブジェクトも
コード補完してくれる
CakePHP
CakeStorm
https://github.com/nanapi/cake-storm

ファイル間ジャンプをサポート
コード補完をサポート予定
CakePHP
CakePHP
CakePHP

render上でCtrl+B
Laravel

対応プラグインはないが、補完ヘルパー有
https://github.com/jonphipps/laravel4-idehelper-generator

コード補完可能
Laravel

コアからコード補完してくれる
フレームワーク対応していなくても
コード補完

Annotationをちゃんと書けば
コード補完してくれる
「Vagrant内の環境で開発したい」
それPhpStormでできるよ

PhpStorm7からVagrant対応!
Init、Up、Reloadなど可能
「画面分割して開発したいんだよねー」
画面分割できるよ

Vertical, Horizontal自由に分割可
それ、PhpStormでできないよ・・・
「SSHしてサーバ上でエディタを立ちあげて
開発したい」
IDEとエディタは別物

根本的な思想や大枠での役割が違うので無
理なものは無理
SSHしてサーバ上でエディタを立ち上げる
必要性があるかを検討する
代替案として・・・
自動アップロード
Branch移動時、
ローカル

差分のみアップロード
開発用サーバ

アップロード

開発

ファイル変更時に
自動アップロード
「VimScriptが動かない」	
「Elispが動かない」
\((^^oo^^))/
PhpStormのちょっと便利な機能
PhpStormさんの分かってらっしゃる感が	
伝わる細かい機能をいくつか紹介します
Jump to Class/File
Ctrl+N / Ctrl+Shift+N
ファイル名やクラス名を指定して、

直にファイルへジャンプできる
PhpStorm7で動作が超高速に
Jump to Class/File
Jump to Class/File
Jump to Class/File
Jump to Class/File
Jump to File

Jump to Class
Go to Decralation

Ctrl+B
クラスや変数、メソッドの定義元にジャンプ
できる
Go to Decralation

定義元クラスへ
Go to Decralation

定義元メソッドへ
Cursor Back/Forward

1つ前に カーソルがあった箇所 まで戻る機能
Goto Declarationで飛んだ後やファイルジャ
ンプで飛んだ後に戻りたいときに便利
Recent Files

Ctrl+E
エディタ上で開いた

ファイル履歴を表示
Speed Search

プロジェクトツリー上

でマッチ箇所を

ハイライトしてくれる
Local History

PhpStorm上で編集したファイルを、ファイ
ルごとに履歴を保持
擬似VCSのようなもの
Local History

ファイル差分を時系列で表示
リモートデバッグ

面倒な設定はほぼ不要
変数の書き換え可
コードの動的実行可
リモートデバッグ

複雑なコードの前後でストップさせて
コードを動的実行すると…
リモートデバッグ

実行結果が即時確認可能!
Paste from History

PhpStorm内でCtrl+Cした内容を保持
絞り込み検索からの貼付けも可能
他にも

SASS/CofeeScript対応
LiveEdit,Emmet
Live Template etc..
最後に
30日無料の体験版あるよ!
個人ライセンスが

2/25(火)まで600円引き!

2/26(水)∼2/28(金)まで500円引き!

#だいぶ雪のせいだ

http://samuraism.com/2014/02/14/2208

More Related Content

What's hot

initとプロセス再起動
initとプロセス再起動initとプロセス再起動
initとプロセス再起動
Takashi Takizawa
 

What's hot (20)

Kotlin/Native 「使ってみた」の一歩先へ
Kotlin/Native 「使ってみた」の一歩先へKotlin/Native 「使ってみた」の一歩先へ
Kotlin/Native 「使ってみた」の一歩先へ
 
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭するCEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
 
Node.js Native ESM への道 〜最終章: Babel / TypeScript Modules との闘い〜
Node.js Native ESM への道  〜最終章: Babel / TypeScript Modules との闘い〜Node.js Native ESM への道  〜最終章: Babel / TypeScript Modules との闘い〜
Node.js Native ESM への道 〜最終章: Babel / TypeScript Modules との闘い〜
 
Java仮想マシンの実装技術
Java仮想マシンの実装技術Java仮想マシンの実装技術
Java仮想マシンの実装技術
 
Nginx lua
Nginx luaNginx lua
Nginx lua
 
emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略
emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略
emscriptenでC/C++プログラムをwebブラウザから使うまでの難所攻略
 
initとプロセス再起動
initとプロセス再起動initとプロセス再起動
initとプロセス再起動
 
Protocol Buffers 入門
Protocol Buffers 入門Protocol Buffers 入門
Protocol Buffers 入門
 
こわくない Git
こわくない Gitこわくない Git
こわくない Git
 
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
 
Javaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組みJavaはどのように動くのか~スライドでわかるJVMの仕組み
Javaはどのように動くのか~スライドでわかるJVMの仕組み
 
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
3種類のTEE比較(Intel SGX, ARM TrustZone, RISC-V Keystone)
 
C#や.NET Frameworkがやっていること
C#や.NET FrameworkがやっていることC#や.NET Frameworkがやっていること
C#や.NET Frameworkがやっていること
 
【Swift】 それ、enumとstructでやってみましょう!!
【Swift】 それ、enumとstructでやってみましょう!!【Swift】 それ、enumとstructでやってみましょう!!
【Swift】 それ、enumとstructでやってみましょう!!
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
 
Effective Modern C++ 勉強会 Item 22
Effective Modern C++ 勉強会 Item 22Effective Modern C++ 勉強会 Item 22
Effective Modern C++ 勉強会 Item 22
 
今日からできる!簡単 .NET 高速化 Tips
今日からできる!簡単 .NET 高速化 Tips今日からできる!簡単 .NET 高速化 Tips
今日からできる!簡単 .NET 高速化 Tips
 
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
 
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
Javaコードが速く実⾏される秘密 - JITコンパイラ⼊⾨(JJUG CCC 2020 Fall講演資料)
 
RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話
 

Similar to それPhpStormで出来るよ #phpstudy

WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniterWTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniter
Masanori Oobayashi
 
php and sapi and zendengine2 and...
php and sapi and zendengine2 and...php and sapi and zendengine2 and...
php and sapi and zendengine2 and...
do_aki
 
勉強会20140319 rspec_capybara
勉強会20140319 rspec_capybara勉強会20140319 rspec_capybara
勉強会20140319 rspec_capybara
Shugo Numano
 

Similar to それPhpStormで出来るよ #phpstudy (20)

PhpStormで始める快適なWebアプリケーション開発 #phpcon2013
PhpStormで始める快適なWebアプリケーション開発 #phpcon2013PhpStormで始める快適なWebアプリケーション開発 #phpcon2013
PhpStormで始める快適なWebアプリケーション開発 #phpcon2013
 
最強のPHP統合開発環境 PHPStorm
最強のPHP統合開発環境 PHPStorm最強のPHP統合開発環境 PHPStorm
最強のPHP統合開発環境 PHPStorm
 
Php development efficiency improvement
Php development efficiency improvementPhp development efficiency improvement
Php development efficiency improvement
 
WordPress テーマ作成&PHP超入門
WordPress テーマ作成&PHP超入門WordPress テーマ作成&PHP超入門
WordPress テーマ作成&PHP超入門
 
WTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniterWTM53 phpフレームワーク いまさらcodeigniter
WTM53 phpフレームワーク いまさらcodeigniter
 
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
 
Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話Rubyの会社でPythonistaが3ヶ月生き延びた話
Rubyの会社でPythonistaが3ヶ月生き延びた話
 
Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話Rubyの会社でPythonistaが三ヶ月生き延びた話
Rubyの会社でPythonistaが三ヶ月生き延びた話
 
PHP で実行中のスクリプトの動作を下から覗き見る
PHP で実行中のスクリプトの動作を下から覗き見るPHP で実行中のスクリプトの動作を下から覗き見る
PHP で実行中のスクリプトの動作を下から覗き見る
 
Phpstormをつかいはじめました〜序〜 #sa_study
Phpstormをつかいはじめました〜序〜 #sa_studyPhpstormをつかいはじめました〜序〜 #sa_study
Phpstormをつかいはじめました〜序〜 #sa_study
 
php and sapi and zendengine2 and...
php and sapi and zendengine2 and...php and sapi and zendengine2 and...
php and sapi and zendengine2 and...
 
php-src の歩き方
php-src の歩き方php-src の歩き方
php-src の歩き方
 
退職PDFメーカーの作り方
退職PDFメーカーの作り方退職PDFメーカーの作り方
退職PDFメーカーの作り方
 
4時間耐久 PHP on Heroku
4時間耐久 PHP on Heroku4時間耐久 PHP on Heroku
4時間耐久 PHP on Heroku
 
最新PHP事情 (2000年7月22日,PHPカンファレンス)
最新PHP事情 (2000年7月22日,PHPカンファレンス)最新PHP事情 (2000年7月22日,PHPカンファレンス)
最新PHP事情 (2000年7月22日,PHPカンファレンス)
 
真っ当な技術を使ったふつうのWebサービス開発
真っ当な技術を使ったふつうのWebサービス開発真っ当な技術を使ったふつうのWebサービス開発
真っ当な技術を使ったふつうのWebサービス開発
 
VMを改めて学んで見る
VMを改めて学んで見るVMを改めて学んで見る
VMを改めて学んで見る
 
勉強会20140319 rspec_capybara
勉強会20140319 rspec_capybara勉強会20140319 rspec_capybara
勉強会20140319 rspec_capybara
 
Developers Summit 2014 「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」
Developers Summit 2014  「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」Developers Summit 2014  「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」
Developers Summit 2014 「Play2/Scalaでドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所」
 
ネタプログラミング言語クリエイターYouma (Gunma.web #8 2012/03/03)
ネタプログラミング言語クリエイターYouma (Gunma.web #8 2012/03/03)ネタプログラミング言語クリエイターYouma (Gunma.web #8 2012/03/03)
ネタプログラミング言語クリエイターYouma (Gunma.web #8 2012/03/03)
 

Recently uploaded

Recently uploaded (10)

論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 

それPhpStormで出来るよ #phpstudy