CakePHP-2.0:使用public和var的区别


CakePHP-2.0: difference between using public and var

CakePHP-2.0有这个=>

// Even in your cakephp 2.1.x we have this format
    <?php
    class PostsController extends AppController {
        public $helpers = array ('Html','Form');
        public $name = 'Posts';
        public function index() {
            $this->set('posts', $this->Post->find('all'));
        }
    }
    ?>

CakePHP-1.3.10 had this=>

<?php
class PostsController extends AppController {
    var $helpers = array ('Html','Form');
    var $name = 'Posts';
    function index() {
        $this->set('posts', $this->Post->find('all'));
    }
}
?>

使用public和var有什么区别?

var是一个已弃用的可见性关键字,其功能等同于public

From the docs:

注意:出于兼容性原因,PHP 4仍然支持使用var关键字声明变量的方法(作为public关键字的同义词)。在5.1.3之前的PHP 5中,使用它会生成E_STRICT警告。

被关键词public所取代,新蛋糕遵循新标准。

"var"在PHP5引入对象可见性之前就存在了。虽然它在技术上仍然是有效的,但你应该避免使用它,并使用适当的可见性关键字。

回答你的问题,它们在功能上是相同的。然而,"var"是不赞成的,很快就会消失。