NetBeans IDE for PHP のエディタ: 概要

このドキュメントでは、NetBeans IDE の PHP エディタの概要を示します。

目次

このページの内容は NetBeans IDE 7.1 が対象です

このチュートリアルに従うには、次のソフトウェアとリソースが必要です。

ソフトウェアまたはリソース 必須バージョン
NetBeans IDE PHP ダウンロードバンドル
PHP エンジン version 5
Web サーバー Apache HTTP Server 2.2 (推奨)
PHP デバッガ XDebug 2.0 以降

はじめに

NetBeans IDE for PHP で PHP アプリケーションを正常に開発および配備するには、必要なすべてのソフトウェアがインストールされ、PHP 開発用に構成されている必要があります。

NetBeans IDE for PHP のエディタのレイアウト

エディタには次のウィンドウがあります。

  • 編集中のファイルを表示する「エディタ」ウィンドウ。「エディタ」には、開いているファイルごとのタブがあります。
  • 既存のプロジェクトのリストを表示する「プロジェクト」ウィンドウ
  • 各プロジェクトのファイルを表示する「ファイル」ウィンドウ
  • 現在使用可能な外部サービス (データベースなど) のリストを表示する「サービス」ウィンドウ

Ctrl+7 キーを押して、左側のパネルに「ナビゲータ」ウィンドウを開くこともできます。PHP クラスがエディタ内で開いている場合、「ナビゲータ」はそのクラスの構造を表示します。クラスでない PHP ファイルは「ナビゲータ」ウィンドウに表示されません。

これらのいずれかのウィンドウのヘルプを開くには、ウィンドウ内の任意の要素を選択し、F1 キーを押します。

構文の強調表示

エディタでは、PHP、HTML、JavaScript、および CSS の各コードブロックの構文が強調表示されます。

現在のバージョンでは次の構文要素が強調表示されます。

  • PHP のキーワード
  • PHP の変数
  • PHP の定数
  • HTML のタグ
  • HTML の入力フォームの属性
  • 現在の行が水色の背景で表示される。
  • PHP 変数、関数、またはクラスの内部にキャレットを配置することによって、変数のすべての出現箇所が強調表示される。
  • エラーが検出された行に赤い下線が表示される。
NetBeans for PHP のエディタウィンドウで PHP と HTML の両方のコード要素が強調表示されたコードフラグメント

強調表示の設定を変更するには、「ツール」>「オプション」を選択し、「フォントと色」タブをクリックします。次に設定を指定します。

宣言へ移動

「宣言へ移動」機能を使用すると、変数または関数の出現箇所から、その変数または関数が宣言または初期化されている行まで移動します。この機能を使用するには、関連する変数または関数の出現箇所にカーソルを配置し、コンテキストメニューから「ナビゲート」>「宣言へ移動」を選択するか、Ctrl-B/⌘-B キーを押すか、Ctrl- クリックを使用します。

ナビゲータウィンドウ

「ナビゲータ」ウィンドウは、現在アクティブなファイルの PHP 構造を示す要素のリストとしてコード構造を表示します。ファイルにほかのテキストソース (たとえば HTML) が含まれる場合はその構造もリストに表示されます。リスト内の関数または変数をダブルクリックすると、クリックした要素の宣言にカーソルが配置されます。

注意: 「ナビゲータ」ウィンドウは PHP クラスの PHP コードのみ表示します。クラス外部の PHP コードは表示できません。

ナビゲータのリストには通常は埋め込みリストは含まれませんが、複雑な文は埋め込み構造が含まれる場合があります。たとえば、PHP のクラス宣言文は、宣言されているクラスメンバーのツリーとして表示される場合があります。

リストは、ユーザーがコードを入力すると動的に更新されます。

「ナビゲータ」ウィンドウは、左側のパネルの下部に表示されます。

  1. 「ナビゲータ」ウィンドウを開くには、Ctrl+7 キーを押すか、「ウィンドウ」>「ナビゲート」>「ナビゲータ」に移動します。HTML と PHP の構造を示すツリーが表示されます。
  2. 特定の要素に移動するには、リスト内で該当するノードをダブルクリックします。
    ナビゲーションツールの使用例を示す図。クラスと関数の折り畳みと展開も示します。

コード折り畳み

エディタでは、PHP ソースコードが含まれる現在編集中のファイルで、モジュール、クラス、または関数の表示と非表示を切り替えることができます。コードを折り畳んだり表示したりするには、コード左側の「-」または「+」のアイコンをクリックするか、Ctrl+ または Ctrl- キーを押します。

スマートインデント

ユーザーの入力中にコードが自動的に整形されます。

整形

コードを整形してわかりやすくするには、次の手順に従います。

  1. 該当するコードを選択します。
  2. 右クリックのコンテキストメニューから「整形」を選択するか、Alt+Shift+F キーを押します。

括弧の補完

ユーザーがコードを入力している間にエディタによって対応する括弧や引用符が自動的に追加および削除されます。

  • 一重引用符 ' ' と二重引用符 " "、小括弧 ()、および角括弧 [] の最初の記号を入力すると、対応する記号が追加されます。
  • 行末には、一重または二重の右引用符に続けてセミコロンが追加されます。
  • ユーザーが Enter キーを押すと右中括弧が追加され、スマートインデント機能が有効になります。
  • 一重または二重の左引用符、左小括弧、または左角括弧を削除すると、対応する右の記号も自動的に削除されますが、行末のセミコロンに影響はありません。
  • カーソルが右の小括弧 )、中括弧 }、または角括弧 ] にあるとき、対応する左の記号が黄色で強調表示されます。
    カーソルが右の小括弧または角括弧にあるとき、対応する左の要素が強調表示されます。

名前変更リファクタリングと名前の即時変更

クラス名などの要素の名前をプロジェクト内のすべてのファイルにわたって変更できます。この機能では、変更を行う前に変更をプレビューすることが強制されます。プレビューウィンドウではその要素のすべての場所が示され、要素の個々の出現箇所を名前の変更の対象から除外できます。

名前変更リファクタリングは、古い機能である名前の即時変更と対比されます。名前の即時変更も引き続き使用できますが、メソッド内の変数の名前変更や、private である変数およびフィールドの名前変更など、「public 以外の」コンテキストでのみ機能します。名前の即時変更では 1 つのファイル内の要素のみ名前を変更でき、プレビューウィンドウは提供されません。

名前の即時変更を使用するには、変更する名前にカーソルを置き、Ctrl-R キーを押します。名前の即時変更がその変数に適用される場合、その変数名または関数名のすべてのインスタンスが強調表示されます。

Ctrl-R キーを押したあとの PHP コードエディタ

名前の 1 つのインスタンスを変更すると、ファイル内のほかのすべてのインスタンスも同時に変更されます

リファクタリングされた変数名を示す PHP コードエディタ

名前変更リファクタリングを使用するには、名前を変更する要素を選択し、Ctrl-R キーを押すか、右クリックして「リファクタリング」>「名前を変更」を選択します。要素の名前を変更するダイアログが開きます。

変数の名前を変更するためのダイアログ

要素の名前を変更して、「プレビュー」を押します。「リファクタリング」ウィンドウが開きます。このウィンドウでは、プロジェクト内での要素のすべてのインスタンスを検索し、その名前を変更するかどうかを決定できます。

「リファクタリング」ウィンドウ

名前変更リファクタリングの詳細については、スクリーンキャスト「NetBeans IDE 7.0 for PHP での名前変更リファクタリングおよびほかのエディタの改善」を参照してください。

コード補完

コード補完は、コーディングのプロセスを高速にする一連の機能の総称です。

次の種類のコード補完があります。

スニペット

スニペットによってユーザーはさまざまな要素のコードを自動的に生成できます。

  1. 「ツール」>「パレット」>「コードクリップ」を選択します。さまざまなユーザーインタフェース要素を含むパレットが右側のパネルに表示されます。
  2. パレット上のアイコンを、コード内の適切な場所までドラッグします。対応する要素のパラメータを指定するためのダイアログが表示されます。データを入力します。
  3. 選択した要素を表示するコードが生成され、選択した位置に挿入されます。

状況に応じた候補

エディタには、次のいずれかの先頭の数文字を入力すると、状況に応じてその文字を補完する候補が表示されるという機能があります。

  • PHP キーワード (if、else、elseif、while、switch、function など)
  • PHP 組み込み関数 (substr、count など)
  • 事前定義またはユーザー定義の変数

エディタでは候補が表示されるだけでなく、パラメータヒントも表示されます。コード補完を適用するには、次の手順に従います。

  1. 必要な文字列の先頭の数文字を入力します。
  2. Ctrl+ スペースキーを押します。ドロップダウンリストに、状況に応じた候補が表示されます。各候補には説明とパラメータヒントがあります。入力を続けるとリストの内容が変化します。
  3. 現在のコンテキストで使用できる PHP キーワードのリストを取得するには、何も入力せずに Ctrl+ スペースキーを押します。
    状況に応じた候補のリスト。各候補には説明とパラメータヒントがあります。
  4. 変数に関するヒントを表示するには、ドル記号「$」を入力します。現在使用可能なすべての局所変数と大域変数のリストが表示されます。
    ユーザーが「$」と入力すると変数のリストが開きます。リストには PHP の大域変数とユーザー定義の変数が含まれます。

コードテンプレートと省略名

この文脈では、「省略名」とは、プログラミング言語で使用されるキーワードに対応する、事前定義された一連の文字列を指します。省略名はそれぞれ完全なキーワードを含む拡張テキストと、パラメータヒントを含むキーワードのコードテンプレートに関連付けられています。この機能を適用するには、省略名を入力して Tab キーを押します。

キーワード「class」の省略名「cls」を入力したところ

省略名が対応するキーワードに置き換わり、キーワードのコードテンプレートが表示されます。

省略名の完全なテキストとクラス定義のコードテンプレートが表示されたところ

定義されている省略名のリストとコードテンプレートを表示するには、次の手順に従います。

  1. 「ツール」>「オプション」>「エディタ」>「コードテンプレート」を選択します。
  2. 「言語」ドロップダウンリストから「PHP」を選択します。PHP の省略名のリストと、各省略名に定義されているコードテンプレートが表示されます。
  3. リストに定義を追加するか、リストから定義を削除するには、それぞれ「新規」ボタンまたは「削除」ボタンを使用します。
  4. 定義を編集するには、該当する行を選択し、リストの下の編集フィールドでテキストを編集します。
    省略名のリストと、各省略名に定義されているコードテンプレート

詳細については、「NetBeans IDE for PHP でのコードテンプレート」を参照してください。

コンストラクタのコード補完

new キーワードの入力後、プロジェクト内で使用可能なすべてのクラスのコンストラクタとパラメータを示すコード補完ウィンドウが表示されます。

コンストラクタのコード補完のヒント

SQL コード補完

文字列が SQL のキーワード「select」で始まるときに、SQL コード補完が表示されます。最初に、データベース接続を選択します。

データベース接続を示すコード補完

IDE に登録されているすべてのデータベース接続が表示されます。

IDE に登録されているすべてのデータベース接続

接続を選択すると、SQL コード補完には、そのデータベース接続のすべての表が表示されます。

wishlist データベース接続のすべての表

表に列がある場合は、列も表示されます。

表の列の表示

SQL コード補完は、表の別名にも使用できます。

hotel 別名の表を示す SQL コード補完

PHP 5.3 の名前空間

PHP 5.3 から、コード補完は、完全修飾、部分修飾、および非限定の名前空間名をサポートしています。詳細についてはスクリーンキャストを参照してください。

メソッドのオーバーライドと実装

クラスメンバー間でのコード補完機能によって、メソッドのオーバーライドまたは実装が可能です。

コード補完によるメソッドのオーバーライド

高度な Try/Catch コード補完

NetBeans IDE 7.1 以降では、catch 文のコード補完には、Exception から継承されたクラスのみが含まれるようになりました。

catch パラメータでの高度なコード補完を表示するエディタ

四角形選択

NetBeans IDE 7.1 for PHP では四角形選択アクションが導入されました。この編集機能は、ペーストされたコード内の行番号を削除するなどの場合に便利です。

四角形選択を有効にするには、四角形選択トグルボタンを押すか、Ctrl-Shift-R キーを押します。

四角形選択トグルボタンを示すエディタ

四角形選択が有効な場合、マウスまたはキーボードで選択を実行できます。キーボードを使用する場合、キャレットを隅に配置し、SHIFT キーを押し下げた状態で、必要なだけ矢印キーで選択します。 

ペーストされた行番号の四角形選択を示すエディタ

領域が選択されているときにテキストを書き込んだ場合、テキストは選択された領域の各行に配置されます。これは、クラス内の複数のフィールドにあるアクセス修飾子を同時に変更する場合などに便利なことがあります。 

四角形選択内のすべての行にアクセス修飾子を追加したエディタ

PHPDocumentor のサポート

NetBeans IDE 7.0 には、PHPDocumentor の組み込みサポートが追加されました。詳細については、スクリーンキャスト「NetBeans IDE での PHP ドキュメントの生成」を参照してください。

警告: PHPDocumentor では、PHP 5.3 は完全にはサポートされていません。名前空間およびその他いくつかの 5.3 機能は、PHP Documentor ではドキュメント化されません。

コードジェネレータ

Alt-Insert (Mac の場合は Ctrl-I) の組み合わせを押すと、メニューが開き、利用可能なすべてのコードジェネレータが表示されます。一覧表示されるジェネレータは状況に応じて異なります。キーの組み合わせを押したときの、コード内でのキャレット位置によって、表示内容は異なります。コード内の位置に応じて、データベース接続、データベース表、ロレムイプサムテキストなどを生成できます。この節では、次のコードジェネレータについてのみ説明します。

コンストラクタ

キャレットがクラス本文の中にある場合、Alt-Insert (Mac の場合は Ctrl-I) キーを押してコンストラクタを生成できます。ただし、その本文内に含まれている関数の中では生成できません。「生成」の「コンストラクタ」を選択すると、ダイアログが開き、コンストラクタで初期化できるフィールドのリストが表示されます。フィールド名は、コンストラクタのパラメータとして使用されます。

コンストラクタで初期化するフィールドのダイアログ

フィールドを選択しないこともできます。この場合、IDE は、パラメータを持たない空のコンストラクタを生成します。そのフィールドが複数のプロパティーを持つクラスである場合、プロパティーを個別に選択するか、クラスを選択することができます。クラスを選択すると、そのクラスのすべてのプロパティーが自動的に選択されます。

詳細については、NetBeans PHP のブログ投稿を参照してください。

取得メソッドおよび設定メソッド

キャレットがクラス本文の中にある場合に、Alt-Insert (Mac の場合は Ctrl-I) を押して「取得メソッド」、「設定メソッド」、または「取得メソッドおよび設定メソッド」を選択すると、取得メソッドと設定メソッドを生成できます。利用可能な関数だけが表示されます。たとえば、利用可能なプロパティーの設定メソッドがすでにある場合は、取得メソッドのオプションだけが表示されます。

「生成」の「取得メソッド」、「設定メソッド」、または「取得メソッドおよび設定メソッド」を選択すると、ダイアログが開き、取得メソッドまたは設定メソッドを生成できるプロパティーが表示されます。これらのプロパティーはツリーに表示されます。ある親クラスを選択すると、そのクラスのすべてのプロパティーが自動的に選択されます。

取得メソッドまたは設定メソッドに、getName 規則または get_name 規則に従った名前を付けることができます。

詳細については、元の NetBeans PHP のブログ投稿および「取得メソッドおよび設定メソッドの生成の改善」の投稿を参照してください。

メソッドのオーバーライドと実装

キャレットがクラス本文の中にあり、クラスメンバーが複数存在する場合、Alt-Insert (Mac の場合は Ctrl-I) を押して、オーバーライドまたは実装されたメソッドを生成できます。挿入可能なメソッドを表示するダイアログが開き、そのメソッドがオーバーライドされるのか実装されるのかを示します。

「オーバーライドメソッドの生成」ダイアログ

この機能は、「すべての抽象メソッドの実装」ヒント機能、およびメソッドのオーバーライドと実装をコード補完する機能を補完するものです。

詳細については、NetBeans PHP のブログ投稿を参照してください。

パラメータヒント

エディタでは、関数またはメソッドが呼び出されているコンテキストで、関数またはメソッドの仮パラメータに関するプロンプトが表示されます。

  1. 呼び出す関数の先頭の数文字を入力します。
  2. Ctrl+ スペースキーを押します。ドロップダウンリストに状況に応じた候補と、各候補の仮パラメータが表示されます。
    状況に応じたヒントのリスト
  3. 適切な候補を選択して Enter キーを押します。選択した関数の名前がコードに挿入され、パラメータを入力するためのテンプレートが角括弧内に表示されます。
    選択した状況に応じた候補のパラメータヒント

コメント内での変数の型の定義

コメント内で変数とその型を定義できます。コメントは、/* @var $<変数の型> */ の形式になっている必要があります。正しく記述されているコメントは、var タグがボールドフォントになります。

コメント内で定義された変数

コードテンプレート vdoc の入力後に Tab キーを押すことで、変数を定義するコメントを生成できます。変数名が選択され、変更できる状態になります。もう一度 Tab キーを押すと、型が選択されます。

vdoc テンプレートによって生成された、変数を宣言するコメント

コードテンプレートによって変数名と型が自動的に設定されます。テンプレートを挿入した位置のあとで使用している変数がある場合は、その変数名がデフォルトで表示されます。テンプレートを挿入した位置のあとに変数がなく、テンプレートの前で使用している変数がある場合は、その変数名がデフォルトで表示されます。NetBeans IDE がテンプレートを使用している近くで変数を見つけることができない場合、デフォルト名は variable になります。変数の型は、同じ規則に従って自動的に設定されます。

vdoc テンプレートによって生成された、デフォルトの変数名と型を宣言するコメント

エラーメッセージ

エディタでは、コードの入力中にその構文が分析され、構文エラーがあった場合は該当する行に下線が表示され、その横に赤い丸が設定されます。エラーの説明を表示するには、該当する行にマウスを置くか、赤い丸をクリックします。エラーの簡単な説明を示すツールチップが表示されます。
エラーメッセージ: エラーがある行の上に表示されたツールチップ

PHPUnit と Selenium のテスト

NetBeans IDE for PHP は、コードカバレージを含む PHPUnit 自動化テストをサポートしています。NetBeans IDE 7.1 以降では、コード内のテストグループを使用できます。

NetBeans IDE では、PHPUnit に加えて、Selenium の移植可能なテストフレームワークもサポートされています。Selenium プラグインは、アップデートセンターから入手できます。このプラグインをインストールすると、Selenium サーバーが IDE の登録済みサーバーに追加され、Selenium のテストオプションが PHP のメニューに追加されます。

詳細については、PHPUnit と Selenium を使用したテストを参照してください。

スペルチェッカー

スペルチェッカーを使用できます。「オプション」ダイアログで、さまざまな言語のスペルチェックをオンまたはオフに切り替えることができます。

スペルチェッカーの「オプション」ダイアログ

「オプション」ダイアログでは、新しい辞書を追加および削除したり、ロケールを設定したりできます。新しい辞書を追加する場合、単語を含むファイルを用意する必要があります。辞書ファイルの形式は、各単語が新規行に記載された単語のリストです。辞書ファイルのエンコードと、ファイルが使用されるべきロケールを、NetBeans に対して指示する必要があります。

スペルチェッカーへの新規辞書の追加

スペルチェッカーは辞書にない単語を検出すると、その単語に赤色の下線を付けます。またスペルチェッカーはその単語に、「スペルミスの単語」と表示するツールチップを追加します。HTML テキストは PHP ファイル内でチェックされます。

PHP ファイル内の HTML テキストで検出されたエラー

Symfony フレームワークと Zend フレームワークのサポート

Symfony フレームワークと Zend フレームワークのサポートが PHP エディタに組み込まれています。これは、既存の Symfony フレームワークと Zend フレームワークを認識します。新規 PHP プロジェクトウィザードの最後のパネルで、新しいプロジェクトにフレームワークを追加できます。

Symfony または Zend をサポートする PHP プロジェクトでは、プロジェクトのコンテキストメニューから Symfony または Zend コマンドを実行できます。

Symfony コマンドを表示したコンテキストメニュー

次の場合に、コマンドの UI を使用します。

  • Symfony/Zend コマンドをフィルタする (1)
  • コマンドパラメータを指定する (2)
  • コマンドを選択する (3)
  • コマンドのコンテキストヘルプを参照する (4)
  • 実行するコマンド全体をプレビューする (5)
注釈つきの Symfony コマンドダイアログ

コマンドのリストはプロジェクト固有のものです。つまり、Propel の代わりに Doctrine を使用する場合、Propel コマンドはリストされず、Doctrine のコマンドだけがリストされます。プロジェクトの Symfony プラグインからのコマンドもすべて使用できます。

コード補完は、Symfony ビューの Symfony 変数および Zend ビューの Zend 変数で使用できます。

コード補完での Symfony 変数

IDE には、Symfony/Zend ビューとアクション間のナビゲーションショートカットも用意されています。NetBeans 6.9 ではこれらのショーカットが改善されたほか、ビューテンプレート/ファイルでのコード補完に、コントローラ/アクションファイル内で宣言されている変数が含まれるようになりました。詳細は、NetBeans PHP のブログ投稿を参照してください。

Symfony フレームワークのサポートの詳細は、Symfony の スクリーンキャストを参照してください。

Zend フレームワークのサポートの詳細は、Zend のスクリーンキャストを参照してください。

Smarty のサポート

NetBeans IDE 7.1 には Smarty フレームワークのサポート用のプラグインが含まれています。このサポートには、基本的な Smarty 3 機能、つまり Smarty 3 のコード補完と区切り記号が含まれます。

基本的な Smarty 3 のサポートを示すエディタ

「オプション」ウィンドウで Smarty 3 と Smarty 2 の動作を切り替えます。「ツール」>「オプション」(MacOS の場合は「NetBeans」>「設定」) に移動し、「PHP」を選択して、「Smarty」タブを開きます。Smarty フレームワークのプラグインがインストールされている必要があります。

Smarty のオプション

ご意見をお寄せください


メーリングリストに登録することによって、NetBeans IDE PHP 開発機能に関するご意見やご提案を送信したり、サポートを受けたり、最新の開発情報を入手したりできます。

PHP の学習に戻る

get support for the NetBeans

Support


By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2013, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo