Difference between #1 and #7 of
Eclipse PDT - code-hints, references and other goodies

Changes

Title unchanged

Eclipse PDT - code-hints, references and other goodies

Category unchanged

Tutorials

Yii version unchanged

Tags changed

IDE

Content changed

## Intro Since PHP is dynamically typed language, the way IDE may help you is limited. It will hint you on methods, fields and class constants, but won't know they type of object you receive when iterating over an array. Eclipse parses phpDoc comments to find out about function parameter and returned value types, for descriptions and so on. To make best use of it be sure to add phpDocs in you'rer code:     
 
    

 
 
```php 
/**      * You'll see this when you get a drop-down      * with suggestions for completing the word      * and onHover on class name.     */
 
    
*/
 
class Foo {     
 
    

 
/**     * Description of a field.      * Be sure to add varType below to get you're code-hints.     * E.g. $aFoo->bar-> + alt+space will give you drop-down     * with varType's fields, methods and so on.      *     * @var varType Description of the field     */     public $bar;           /**     * Description of baz     *
 
   
*
 
 * @param $var varType [$var description]     * @return Foo     */     public function baz( $var ) {     return new Foo();     }     }}
 
```


Yii has great documentation in the source code allowing IDE to help fellow programmer a great deal.
[...]
## Howto

To get code-hints you basically need to have Yii (or any other framework/library) on you
'rer build path. There are 2 ways to achieve this: ### Yii inside you'rer project's source

Say you've got yii (framework dir from ditributed archive) at the same dir as your project's protected dir.
[...]
### Yii outside project's source

Here you'll need to add yii (or any other framework/library) to you
'rer include path.

1. Create project
[...]
5. Once Eclipse parses the code you've got all the good stuff

## Code Hints in Your Yii Views
 
 
Views in Yii have a minimal amount of markup but are launched in the scope of the calling controller class. The "$this" variable references the calling controller but Eclipse and other editors won't be able to provide code hints without some help from you. At the top of the view file you can put:
 
 
 
```php 
<?php /* @var $this SiteController */ ?>
 
```
 
 
Change "SiteController" to the name of the calling controller for each view.
 
 
## Tips * Might happen code-hints doesn't work. Try to remove yiilite.php - it has all framework's classes inside but without documentation. Maybe Eclipse stops after parsing it. * Having yiilite.php will actually give you all classes twice. You might want to remove it for convenience. (Check docs on performance once you're approaching release date!) * Holding mouse over smthomething in the code will give you tooltip with info on that smthomething if any. * F4 will open type-hierarchy (PDT 2.0).
 
* There are more, do your research
14 0
6 followers
Viewed: 42 068 times
Version: 1.1
Category: Tutorials
Tags: IDE
Written by: mindeh
Last updated by: Woil
Created on: Feb 18, 2009
Last updated: 13 years ago
Update Article

Revisions

View all history