具体的には、以下のコード
<?php
class test {
function __construct() {
private $a = array();
}
}
?>
これを実行すると、
Parse error: syntax error, unexpected T_PRIVATE in /virtual/(中略)/test.php on line 4
というエラーになります。
書式は間違っていないと思うのですが、何が悪いんでしょうか・・・??
クラス内変数としてprivateを使いたいのでしょうか?
class test{
private $a;
function hoge(){
$this->a =array();
}
}
で動くと思います。
関数の中で定義すると、基本的にすべて関数の中でしか使えない変数ですので
クラスの関数内でprivateを書いてはいけません。
なるほど、勘違いしていました。
てっきりクラス内のどこでprivate宣言してもいいのかと思い込んでおりました・・・。