class m {
public x;
function __construct() {
$this->x = new diy;
}
function n {
$this->x->ddd(here not complete );
}
}

Also have to check chaining style

$this->excel->getActiveSheet()->getStyle('B3:D3')->getFill()->getStartColor()->setARGB('66BBFF');

Example 2010 screen at
http://img547.imageshack.us/i/16786652.png/

juanc says:

The best thing to do about $this->x is to add a PhpDoc on public x; to explicit call its type.

Chaining works in a limited fashion... depending on having all the return types in PhpDoc comments.

alien3d says:

<?php
/**
         * this is main setting files
         * @name IDCMS
         * @version 2
         * @author hafizan
         * @package religion
         * @link <a href="http://www.idcms.org
" title="http://www.idcms.org
" rel="nofollow">http://www.idcms.org
</a>         * @license <a href="http://www.gnu.org/copyleft/lesser.html" title="http://www.gnu.org/copyleft/lesser.html" rel="nofollow">http://www.gnu.org/copyleft/lesser.html</a> LGPL
         */
       
class appset extends  config {
               
           
           
/**
             * This is variable q description
             *
             * @var object
             * @return object
             */
            
public  $q;
            public
$m;
            public
$leaf_uniqueId;
            public
$staff_uniqueId;
            public
$total;
            private 
$title;
            private 
$table_css;
            private 
$th_css;
            private 
$td_css;
            private 
$word;
            private 
$excel;
            private 
$pdf;
            function
__construct() {
               
/**
                 *  database connection
                 */
           
               
$this->q                     =    new mysqlDb();
               
$this->q->
?>

Have try but don't work.Currently i use eclipse pdt.If this type of php working.A lot of cakephp and zend programmer will do programming in visual studio instead of eclipse.

alien3d says:

<?php
/**
         * this is main setting files
         * @name IDCMS
         * @version 2
         * @author hafizan
         * @package religion
         * @link <a href="http://www.idcms.org
" title="http://www.idcms.org
" rel="nofollow">http://www.idcms.org
</a>         * @license <a href="http://www.gnu.org/copyleft/lesser.html" title="http://www.gnu.org/copyleft/lesser.html" rel="nofollow">http://www.gnu.org/copyleft/lesser.html</a> LGPL
         */
       
class appset extends  config {
               
           
           
/**
             * This is variable q description
             *
             * @var object
             * @return object
             */
            
public  $q;
            public
$m;
            public
$leaf_uniqueId;
            public
$staff_uniqueId;
            public
$total;
            private 
$title;
            private 
$table_css;
            private 
$th_css;
            private 
$td_css;
            private 
$word;
            private 
$excel;
            private 
$pdf;
            function
__construct() {
               
/**
                 *  database connection
                 */
           
               
$this->q                     =    new mysqlDb();
               
$this->q->
?>

Have try but don't work.Currently i use eclipse pdt.If this type of php working.A lot of cakephp and zend programmer will do programming in visual studio instead of eclipse.

alien3d says:

<?php
class s{
    public function
d () {
    }   
}   
class
m {
   
   
/**
     * This is variable m_dt description
     *
     * @var mixed
     *
     */
   
public $m_dt;
   
   
/**
     * This is variable m_dt2 description
     *
     * @var mixed
     *
     */
   
var $m_dt2;
   
   
/**
     * This is variable m_dt3 description
     *
     * @var mixed
     * @return string
     */
   
public $m_dt3;
   
   
/**
     * This is variable m_dt4 description
     *
     * @var mixed
     *
     */
    
public $m_dt4;
   
/**
     * This is variable m_dt5 description
     *
     * @var mixed
     * @return function
     */
   
public $m_dt5;
   
   
/**
     * This is variable m_dt6 description
     *
     * @var mixed
     * @return object
     */
   
public $m_dt6;
   
   
/**
     * This is variable m_dt7 description
     *
     * @var mixed
     * @return string
     */
   
public $m_dt7;
   
/**
     * This is variable m_dt8 description
     *
     * @var mixed
     *
     */
   
private $m_dt8;
   
    public function
__construct() {
       
$s = new s;
       
$s->d();
       
$this->m_dt = new s;
       
//$this->m_dt-> ? not found
       
$this->m_dt2 = new s;
       
//$this->m_dt2-> ?not found   
       
$this->m_dt3 = new s;
       
//$this->m_dt3-> ? not found
       
$this->m_dt5 = new s;
       
//$this->m_dt5-> ? not found
       
$this->m_dt6 = new s;
       
//$this->m_dt6-> ? not found
       
$this->m_dt7 = new s;
       
//$this->m_dt7-> ? not found
       
$this->m_dt8 = new s;
       
//$this->m_dt8->  ? not found
   
}
    public function
x () {
       
$this->m_dt4 = new s;
       
//$this->m_dt4-> ? not found   
   
}   
}   
?>

should be simple enough to undestand. new object mostly create in function __construct .Outside the function ___construct better not.

juanc says:

Using datatype mixed is the same as not specifying anything in PhpDoc comments. You should try to use a specific type whenever possible.

alien3d says:

the first example i declare as object also not work.Can you give an example which work.Currently code lobster and eclipse can understand it without specifiying type

juanc says:

you know what, there might be something I can do about this.

Right now, I set the type to mixed but if I don't set the type to mixed, then when you assign a type via (new s) it will get the right type.

Let me try,

Jaun

alien3d says:

I tried again the latest since the log said have been repaired ?
Fix recursive intellisense: $a->foo()->boo()->foo()

Chain select also not output.And suppose x is function not a variable ,,,

<?php
class m {
    public function
x() {
        return
"a";
    }
}

class

d {
   
/**
* This is variable testing description
*
* @var $testing string 
*/
   
public  $testing;
    public function
insideD() {
       
$this->testing = new m;
   
//    $this->testing-> not founded
       
$testB = new m;
       
$testB->x            
   
}
   
}   
?>