在课堂上使用__DIR__

ufk*_*ufk 5 php dir

我正在编写一个非常简单的PHP应用程序,它会稍微修改一下返回文件的路径.

这是我的代码:

<?php
class abc {

 private $path = __DIR__ . DIRECTORY_SEPARATOR. 'moshe' . DIRECTORY_SEPARATOR;

 function doPath() {
 echo $this->path;
 }

}


$a = new abc();
$a->doPath();
Run Code Online (Sandbox Code Playgroud)

我收到错误:

PHP Parse error:  syntax error, unexpected '.', expecting ',' or ';' in /mnt/storage/home/ufk/1.php on line 4

Parse error: syntax error, unexpected '.', expecting ',' or ';' in /mnt/storage/home/ufk/1.php on line 4
Run Code Online (Sandbox Code Playgroud)

出于某种原因,我无法使用'.' 添加连接__DIR__.到另一个字符串.我错过了什么?

使用PHP 5.5.13.

Mār*_*dis 10

你不能在dinamycally定义类字段

private $a = 5 + 4; // wont work, has to be evaluated
private $a = 9; // works,because static value
Run Code Online (Sandbox Code Playgroud)

你的解决方案

class abs{
  private $path;
  public function __construct(){
     $this->path = __DIR__ . DIRECTORY_SEPARATOR. 'moshe' . DIRECTORY_SEPARATOR;
  }
}
Run Code Online (Sandbox Code Playgroud)

  • [常数标量表达式](http://www.php.net/manual/en/migration56.new-features.php) (3认同)