Capture STAFF - Light
2008.12.10 |Category …オススメツール
Alt + Print Screen かちっ
ペイントにぺたっ
必要な部分だけ選んで・・・・Excelにぺたっ
ぷろぐらまな仕事をしているとどうしても「仕様書」やら「マニュアル」やらを書かなくてはなりません。
その際に言葉だけでは説明しづらい操作やそもそも画面デザインなどは画面のコピーをとって貼り付けるのが一番。
というわけでWindowsデフォルト環境+MS Officeで作業を行うとどうしても上記のような作業をする羽目になって
しまいます。(そのままOfficeに貼り付ければいーじゃん。トリムできるし、という考えもありますが、この方法だと
必要以上の情報、特に業務端末のような機密情報が画面上に存在するかもしれない端末では基本的にNGだと
思っています。画像を無駄に貼り付けるとOfficeのファイルサイズがすくすくと成長してしまうのもイヤな理由で
すけどね^^;)
そこで、ディスプレイに表示された情報を手軽にコピーできるソフトで表題のCapture STAFF - Lightというものがあります。
下のURLよりダウンロード可能です。
http://hp.vector.co.jp/authors/VA017297/
一旦起動するとホットキーが有効になって好きなときに範囲指定でスクリーンショットが取れるようになります。
Eclipseの設定画面みたいにダイアログが出てるのにALT+PrintScreenでもアプリケーション全体がスクリー
ンショットの対象になってしまうようなアプリケーションのスクリーンショットを取るのに重宝しています。
あと、スクロールキャプチャという機能がついていて画面が縦長の場合に画面をスクロールさせながらスクリー
ンショットを取ってくれるのもうれしいですね。(ただし、横方向は対応していません)
Webアプリケーションの開発などで縦長の画面を作ったときに全体図を一発で取れるのはかなりうれしいですね。
ペイントにぺたっ
必要な部分だけ選んで・・・・Excelにぺたっ
ぷろぐらまな仕事をしているとどうしても「仕様書」やら「マニュアル」やらを書かなくてはなりません。
その際に言葉だけでは説明しづらい操作やそもそも画面デザインなどは画面のコピーをとって貼り付けるのが一番。
というわけでWindowsデフォルト環境+MS Officeで作業を行うとどうしても上記のような作業をする羽目になって
しまいます。(そのままOfficeに貼り付ければいーじゃん。トリムできるし、という考えもありますが、この方法だと
必要以上の情報、特に業務端末のような機密情報が画面上に存在するかもしれない端末では基本的にNGだと
思っています。画像を無駄に貼り付けるとOfficeのファイルサイズがすくすくと成長してしまうのもイヤな理由で
すけどね^^;)
そこで、ディスプレイに表示された情報を手軽にコピーできるソフトで表題のCapture STAFF - Lightというものがあります。
下のURLよりダウンロード可能です。
http://hp.vector.co.jp/authors/VA017297/
一旦起動するとホットキーが有効になって好きなときに範囲指定でスクリーンショットが取れるようになります。
Eclipseの設定画面みたいにダイアログが出てるのにALT+PrintScreenでもアプリケーション全体がスクリー
ンショットの対象になってしまうようなアプリケーションのスクリーンショットを取るのに重宝しています。
あと、スクロールキャプチャという機能がついていて画面が縦長の場合に画面をスクロールさせながらスクリー
ンショットを取ってくれるのもうれしいですね。(ただし、横方向は対応していません)
Webアプリケーションの開発などで縦長の画面を作ったときに全体図を一発で取れるのはかなりうれしいですね。
PR
[PHP開発環境] PHPをデバッグする
2008.12.09 |Category …PHP
前回はPHP5にZendDebuggerを導入するところまで行った。
今回はいよいよEclipseでデバッガ起動をしてみる。
その前に、Eclipse側の設定を行う。
まず、Preferences -> PHPより Debugを選択する。

各設定項目を以下のように埋める。
PHP Debugger・・・Zend Debuggerf
Server・・・Default PHP Web Server
PHP Executable・・・localhost
エンコーディングはとりあえずUTF-8。

PHP DebuggerのConfigureアンカー。各デバッガで利用するポートの設定だろう。

ServerのPHP Serverアンカー。PHPを稼動させるためのWebサーバの設定を行う。
(注・いろいろ触ってるうちに先に作っちゃってたっぽい。本来はここではじめて行う設定かも・・・)

PHPサーバを選択してEdit。
Eclipse上で使う設定名とURIを入力。(http://localhost)

Path on ServerにPHP保存ディレクトリの絶対パスを入力し、Local Pathにワークスペース上のパス(プロジェクト名でOKか?)を入力する。

PHP Executableアンカーより、PHP実行ファイルのパスを設定する。
Nameは何でもOK。
Executable Pathはphp.exeへの絶対パス。
PHP ini fileはphp.iniファイルへの絶対パス。
テストによってphp.iniファイルを差し替えたいときは便利かも。
PHP debuggerはZend Debuggerを選択。
ここまで設定して、ワークスペースよりPHPファイルを選択してDebug -> PHP Script。
普通にデバッガが起動してステップ実行ができるようになりました。

きちんとサーバ環境変数も拾ってくれるしなかなかイイ感じ。
と、ここでふと思ったのだがApache起動してないじゃん。
ここでこんどはこのまま「Debug as PHP Web Page」を実行してみる。
今度はEclipse上でブラウザが起動して、案の定実行エラーになった。
更に、今度はApacheを起動した上で「Debug as PHP Web Page」を実行。
すると、同様にEclipse上でブラウザが起動してデバッグモードに突入しました。
きちんとApacheへのアクセスをデバッグするときはApache起動の上でやらないとだめってことね。(当たり前)
では、今度は外部のブラウザからアクセスしてみる。
が、普通にアクセスしてみてもEclipse上でとまってくれない・・・
Tomcatだとここでとまってくれるのに。
Eclipse上のブラウザのURLを見てみる。
http://localhost/phptest/test.php?
debug_session_id=1005&start_debug=1&debug_start_session=1&debug_host=hogehage%
2C127.0.0.1&debug_no_cache=1228750711078&debug_port=10000&
send_sess_end=1&original_url=http://localhost/phptest/test.php&debug_stop=1
なげー。
これ、全部クエリで渡してるのかッ!
このURLをブラウザに貼り付け、実行するとようやくEclipse上でとまってくれました。
Zendのデバッガって無理やりクエリでデバッグ用のパラメタを送ってやってるのね・・・
デバッグ自に必要かどうかはわからないけど、生リクエストでデバッグはできないものなのだろうか?
どっかで見かけたけどZendではMod_Rewriteが効かないらしいがこのあたりが原因?
今度はXDebugの方も見てみよう。
まぁ、何はともあれ、Eclipse上でのデバッグ環境はなんとなくできたということで・・・
今回はいよいよEclipseでデバッガ起動をしてみる。
その前に、Eclipse側の設定を行う。
まず、Preferences -> PHPより Debugを選択する。
各設定項目を以下のように埋める。
PHP Debugger・・・Zend Debuggerf
Server・・・Default PHP Web Server
PHP Executable・・・localhost
エンコーディングはとりあえずUTF-8。
PHP DebuggerのConfigureアンカー。各デバッガで利用するポートの設定だろう。
ServerのPHP Serverアンカー。PHPを稼動させるためのWebサーバの設定を行う。
(注・いろいろ触ってるうちに先に作っちゃってたっぽい。本来はここではじめて行う設定かも・・・)
PHPサーバを選択してEdit。
Eclipse上で使う設定名とURIを入力。(http://localhost)
Path on ServerにPHP保存ディレクトリの絶対パスを入力し、Local Pathにワークスペース上のパス(プロジェクト名でOKか?)を入力する。
PHP Executableアンカーより、PHP実行ファイルのパスを設定する。
Nameは何でもOK。
Executable Pathはphp.exeへの絶対パス。
PHP ini fileはphp.iniファイルへの絶対パス。
テストによってphp.iniファイルを差し替えたいときは便利かも。
PHP debuggerはZend Debuggerを選択。
ここまで設定して、ワークスペースよりPHPファイルを選択してDebug -> PHP Script。
普通にデバッガが起動してステップ実行ができるようになりました。
きちんとサーバ環境変数も拾ってくれるしなかなかイイ感じ。
と、ここでふと思ったのだがApache起動してないじゃん。
ここでこんどはこのまま「Debug as PHP Web Page」を実行してみる。
今度はEclipse上でブラウザが起動して、案の定実行エラーになった。
更に、今度はApacheを起動した上で「Debug as PHP Web Page」を実行。
すると、同様にEclipse上でブラウザが起動してデバッグモードに突入しました。
きちんとApacheへのアクセスをデバッグするときはApache起動の上でやらないとだめってことね。(当たり前)
では、今度は外部のブラウザからアクセスしてみる。
が、普通にアクセスしてみてもEclipse上でとまってくれない・・・
Tomcatだとここでとまってくれるのに。
Eclipse上のブラウザのURLを見てみる。
http://localhost/phptest/test.php?
debug_session_id=1005&start_debug=1&debug_start_session=1&debug_host=hogehage%
2C127.0.0.1&debug_no_cache=1228750711078&debug_port=10000&
send_sess_end=1&original_url=http://localhost/phptest/test.php&debug_stop=1
なげー。
これ、全部クエリで渡してるのかッ!
このURLをブラウザに貼り付け、実行するとようやくEclipse上でとまってくれました。
Zendのデバッガって無理やりクエリでデバッグ用のパラメタを送ってやってるのね・・・
デバッグ自に必要かどうかはわからないけど、生リクエストでデバッグはできないものなのだろうか?
どっかで見かけたけどZendではMod_Rewriteが効かないらしいがこのあたりが原因?
今度はXDebugの方も見てみよう。
まぁ、何はともあれ、Eclipse上でのデバッグ環境はなんとなくできたということで・・・
[PHP環境構築] PHP側のデバッグ環境を整える。
2008.12.04 |Category …PHP
前回はPHP環境構築でIDEとして結局Eclipseを採用したところまでを書いた。
PDTでPHPデバッグ環境を構築するには別途PHPサーバ、PHPデバッグ環境が必要だそうだ。
現在、PDTではZend DebuggerとXDebugというのに対応してるらしい。
ZendはFrameworkを作ってたりとなんとなく聞いたことがあるので(おぃ)とりあえずZendを選ぶ。
Zend Debuggerを
http://downloads.zend.com/pdt/server-debugger/
よりダウンロードし、解凍。
ファイル名が「ZendDebugger-5.2.14-cygwin_nt-i386.zip」となっているのはWindowsとCygwin上でも
OK、という意味だろう。多分。
サブディレクトリにはいくつかディレクトリがあったが今回使うのはnts(non_thread_safe)ではない
5_2_x_comp/ZendDebugger.dll
だろう。
これをPHPインストールディレクトリにコピーし、php.iniに以下の記述を追加。
zend_extension_ts=[ZendDebugger.dllへのパス]
zend_extension=[ZendDebugger.dllへのパス]
zend_extension_manager.debug_server_ts=[PHPインストールディレクトリ]
zend_debugger.allow_hosts=[接続許可ホスト(カンマ区切り、ネットワークアドレス可)]
zend_debugger.expose_remotely=always
これでApacheを再起動したところ、phpinfo()で出力した情報の中にZendEngine2が組み込まれている事を
確認した。
次はEclipseからデバッグ接続を試してみる。
PDTでPHPデバッグ環境を構築するには別途PHPサーバ、PHPデバッグ環境が必要だそうだ。
現在、PDTではZend DebuggerとXDebugというのに対応してるらしい。
ZendはFrameworkを作ってたりとなんとなく聞いたことがあるので(おぃ)とりあえずZendを選ぶ。
Zend Debuggerを
http://downloads.zend.com/pdt/server-debugger/
よりダウンロードし、解凍。
ファイル名が「ZendDebugger-5.2.14-cygwin_nt-i386.zip」となっているのはWindowsとCygwin上でも
OK、という意味だろう。多分。
サブディレクトリにはいくつかディレクトリがあったが今回使うのはnts(non_thread_safe)ではない
5_2_x_comp/ZendDebugger.dll
だろう。
これをPHPインストールディレクトリにコピーし、php.iniに以下の記述を追加。
zend_extension_ts=[ZendDebugger.dllへのパス]
zend_extension=[ZendDebugger.dllへのパス]
zend_extension_manager.debug_server_ts=[PHPインストールディレクトリ]
zend_debugger.allow_hosts=[接続許可ホスト(カンマ区切り、ネットワークアドレス可)]
zend_debugger.expose_remotely=always
これでApacheを再起動したところ、phpinfo()で出力した情報の中にZendEngine2が組み込まれている事を
確認した。
次はEclipseからデバッグ接続を試してみる。
[PHP環境構築]
2008.11.30 |Category …PHP
インストールしたPHPで出力されるphp_infoを見ていてふと思った。
Configuration File (php.ini) Path C:\WINDOWS
php.iniのパスは「C:\WINDOWS」ですよ
今回の作業手順ではWindowsのシステムディレクトリにファイルはコピーしていない。
PHP関連のモジュールはhttpd.confと環境変数だけで補っている、はずがphp.iniの場所はC:\WINDOWS
ですよ、といわれている。
一応確認してみたがシステムディレクトリに該当するファイルは存在しない。
PHPは設定ファイルが無いとデフォルト値だけで動作するみたいですね。
というか、php.iniはデフォルトと異なる部分だけ記述すればその部分をデフォルトからオーバーライドしてくれるつくりなんだろうか?
とりあえず、「php.ini」は無くても動くみたいですねー。(今まで設定ファイルは基本的に設定ファイルがなければアウト、あればそのファイルの中の設定だけで動かす、という仕様でものづくりする事が多かったので汎用的な仕組みの場合は設定ファイル無しケース(全部デフォルトで動かす)、必要な物だけ変えるケースも考慮するのもアリかなーと思いました。<バグの元になりかねないけど^^;あ、設定ファイルのパスをしっかりと定義させればよいのかな?)
php.iniはどうやらhttpd.confによってパスを変えられるらしく、
PHPIniDir "php.iniがあるパス"
を追記すればそのphp.iniを読んでくれるみたいですね。これに関しては環境変数PATHは関係ないっぽいです。
システムディレクトリに突っ込むのもひとつの案なんですが、複数の環境を共存させたい場合に起動バッチかなんかでmoveしてあげなきゃいけなくなったりしてできるのであれば設定ファイル系は環境ごとに分けたいですよね。(この場合、どっちにしてもApacheを複数立てるかモジュールは同じものを使いたい場合は-f オプションでhttp.confを読み分けてあげる必要はあると思いますけど、同じマシンで複数環境は簡単に作れそうですね。
この要領だと.htaccessでのphp.iniファイル制御もできるっぽいので今度調べてみます。
(プロパティによってオーバーライドさせない、とかあるのだろか?デフォルトのphp.iniに書いてあることは変えられない、とかだと運用上良いかもしれないですね。)
Configuration File (php.ini) Path C:\WINDOWS
php.iniのパスは「C:\WINDOWS」ですよ
今回の作業手順ではWindowsのシステムディレクトリにファイルはコピーしていない。
PHP関連のモジュールはhttpd.confと環境変数だけで補っている、はずがphp.iniの場所はC:\WINDOWS
ですよ、といわれている。
一応確認してみたがシステムディレクトリに該当するファイルは存在しない。
PHPは設定ファイルが無いとデフォルト値だけで動作するみたいですね。
というか、php.iniはデフォルトと異なる部分だけ記述すればその部分をデフォルトからオーバーライドしてくれるつくりなんだろうか?
とりあえず、「php.ini」は無くても動くみたいですねー。(今まで設定ファイルは基本的に設定ファイルがなければアウト、あればそのファイルの中の設定だけで動かす、という仕様でものづくりする事が多かったので汎用的な仕組みの場合は設定ファイル無しケース(全部デフォルトで動かす)、必要な物だけ変えるケースも考慮するのもアリかなーと思いました。<バグの元になりかねないけど^^;あ、設定ファイルのパスをしっかりと定義させればよいのかな?)
php.iniはどうやらhttpd.confによってパスを変えられるらしく、
PHPIniDir "php.iniがあるパス"
を追記すればそのphp.iniを読んでくれるみたいですね。これに関しては環境変数PATHは関係ないっぽいです。
システムディレクトリに突っ込むのもひとつの案なんですが、複数の環境を共存させたい場合に起動バッチかなんかでmoveしてあげなきゃいけなくなったりしてできるのであれば設定ファイル系は環境ごとに分けたいですよね。(この場合、どっちにしてもApacheを複数立てるかモジュールは同じものを使いたい場合は-f オプションでhttp.confを読み分けてあげる必要はあると思いますけど、同じマシンで複数環境は簡単に作れそうですね。
この要領だと.htaccessでのphp.iniファイル制御もできるっぽいので今度調べてみます。
(プロパティによってオーバーライドさせない、とかあるのだろか?デフォルトのphp.iniに書いてあることは変えられない、とかだと運用上良いかもしれないですね。)
[PHP開発環境構築] IDEの導入
2008.11.27 |Category …PHP
前回はサーバサイドの環境までを作った。(Apache+PHPまで。完全にデフォルトインストールなので必要に応じて設定を変えねば・・・
次はIDEの導入、という事でPHP対応のエディタを探してみる。
テキストエディタ(普段は秀丸です^^;)でも良いかな、と一瞬思ったけどデバッグ環境まで整える事を考慮してきちんとIDEを使おうと思う。
とりあえず、(というかもともとJava出身なので^^;)まずはEclipse+PHPプラグインのダウンロード。
本当はAllInOne環境は好きじゃないんだがお手軽環境構築という事で
All In One Eclipse + PDTを使ってみます。
とりあえずダウンロードして展開してみました。
新規プロジェクトにPHPってのがあってびっくり。
使い勝手とかも書ければいいですねー。
ところで、英語版のIDEを使ってみると当幅フォントがデフォルトって少ないと思う・・・
昔から当幅フォントなエディタばっかり使ってるから英語版を使うときに最初にものすごく違和感を感じる。
大体すぐにフォントをMSゴシックかなんかに変えちゃうんで余計慣れないんでしょうけどね。
英語圏の人たちは当幅でないフォントの方が見やすいんでしょうかね?インデントとか考えると当幅の方が
良いと感じてしまうのは全角文字を使うからでしょうか?むぅ。
次はIDEの導入、という事でPHP対応のエディタを探してみる。
テキストエディタ(普段は秀丸です^^;)でも良いかな、と一瞬思ったけどデバッグ環境まで整える事を考慮してきちんとIDEを使おうと思う。
とりあえず、(というかもともとJava出身なので^^;)まずはEclipse+PHPプラグインのダウンロード。
本当はAllInOne環境は好きじゃないんだがお手軽環境構築という事で
All In One Eclipse + PDTを使ってみます。
とりあえずダウンロードして展開してみました。
新規プロジェクトにPHPってのがあってびっくり。
使い勝手とかも書ければいいですねー。
ところで、英語版のIDEを使ってみると当幅フォントがデフォルトって少ないと思う・・・
昔から当幅フォントなエディタばっかり使ってるから英語版を使うときに最初にものすごく違和感を感じる。
大体すぐにフォントをMSゴシックかなんかに変えちゃうんで余計慣れないんでしょうけどね。
英語圏の人たちは当幅でないフォントの方が見やすいんでしょうかね?インデントとか考えると当幅の方が
良いと感じてしまうのは全角文字を使うからでしょうか?むぅ。