Content Assist

The Content Assist feature enables the selection and insertion of existing code elements to complete partially entered code.

A list of possible code elements is displayed in relevant locations within your files according to the context of your cursor, which you can then select to be automatically entered into your code.

Each type of code element will have a unique icon. See PHP Icons for a description of each of the icons.

Reserved PHP Words

Functions

Templates

Classes

Interfaces

Constants

Variables (public)

PHP File Include Call

Namespaces (PHP 5.3)

 

Content Assist works with the following elements: PHP Classes, Functions, Variables, Constants, Keywords, Interfaces, attributes, values, nested functions, names, syntax and include calls, as well as all user defined Classes, Functions and Constants.

Note:

Content Assist will also be available for JavaScript elements if JavaScript support was enabled for the project. See Enabling JavaScript Support in PHP Projects for more information.

Content Assist in PHPDoc Block

Content Assist provides proposals for the PHPDoc tags:

  • @return - A type description.

  • @see - Documents an association to another element.

  • @throws - Documents an exception thrown by a method.

 

 

Usage Example

Example:

Function Parameter Hint

 

 

Templated Content Assist

Applying Content Assist proposals to the editor creates a templated expression that provides argument completion according to the declaration of the method. Templated Content Assist helps you edit your method parameters quicker.

 

 

Usage Example

Example:

Function Parameter Hint

 

 

Using elements within the same scope

Elements within the same active project, file or function will be available for use with Content Assist.

Usage Example

Examples:

  • Variables within a function will be added to the Content Assist list when the cursor is within that function.

  • Elements defined within one file will be available in the Content Assist menu in other files within the same project.

 

Function Parameter Hints

When entering a function call, a Function Parameter Hint box will be displayed detailing the types of parameters which should be entered within the parentheses of the function call.

 

 

Usage Example

Example:

Function Parameter Hint

 

 

If the Function Parameter Hint box is not displayed automatically, place your cursor between the parentheses and press Ctrl+Shift+Space.

Content Assist for Include Statements

Content Assist can be activated for require and include calls to call files contained within the same project.

Inserting quotation marks between the parentheses of an include/require call will cause the Content Assist window to display the files available for the function. Selecting a file will complete the include/require call.

 

 

Usage Example

Example:

 

Class Type Hints

By using a comment you can assign a variable its exact class value. This assignment will affect the content assist of this variable accordingly.

 

 

Usage Example

Example:

Note:    

Without the comment, content assist will not be available for the function.

By using a comment you can assign a variable its exact class value. This assignment will affect the content assist of this variable accordingly.

To assign a variable its class value using a comment:

  1. Create your function and assign variables to it.

  2. Enter a comment in the form:

/* @var $"new variable" "Class name" */

Content Assist for Magic Members

Zend Studio supports Content Assist options for 'magic members'. These are properties and methods which were declared using the @property or @method tags within PHP DocBlock comments rather than in the PHP script itself.

See http://manual.phpdoc.org/HTMLSmartyConverter/PHP/phpDocumentor/tutorial_tags.property.pkg.html for more information on magic members.

 

 

Usage Example

Example:

 

Camel Case Matches

Content Assist supports camel case matches when entering code, which displays Content Assist options based on an element's initials.

 

 

Usage Example

Example:

Note:   

Camel Case matching is case sensitive.

Namespaces

When the PHP executable used for the project is set to version 5.3, content assist is available for namespaces.

Namespace elements are represented by the Namespace icon .

 

 

Usage Example

Example:

 

Configuring Content Assist

To configure PHP Content Assist options, go to the Content Assist Preferences page, accessible from Window | Preferences | PHP | Editor | Content Assist.

To configure JavaScript Content Assist options, go to the JavaScript Content Assist Preferences page, accessible from Window | Preferences | Web | JavaScript | Editor | Content Assist.