0

在以下代码中,我收到错误:Undefined variable: base_url on line 27Cannot access empty property on line 27.

我需要回http://google.com显从 render() 传入的 get_url() 参数。

<?php

$smart_url = new smart();

$smart_url -> get_url('http://google.com');

echo  $smart_url -> render();


 /**
 * Smart URL
 */

class smart {

private $base_url;

/**
 * 
 * @param string $url
 */
public function get_url($url) {
        $this -> $base_url = $url;

}


/**
 * @return string $base_url
 */
public function render() {
    return $this -> $base_url;


}

}


?>
4

4 回答 4

1

这只是一个语法错误。您可以通过以下方式访问参数:

 $this->base_url;

没有$参数名称之前

于 2012-05-19T07:19:36.013 回答
1

语法不正确...
$this -> $base_url = $url;

应该

$this->base_url = $url;
于 2012-05-19T07:19:53.953 回答
1

$this -> $base_url是错的; 没有 $ ,$this->base_url

于 2012-05-19T07:20:36.970 回答
1

简短的回答:

利用:$this->base_url

长答案:

当您访问属性时,您不需要美元符号。简单地访问它们:

$this->base_url

第二个将访问一个名为 $base_url 的类属性(变量的内容)。

这是一个常见的错误。美元符号仅用于在此上下文中声明变量:

protected $base_url;
于 2012-05-19T07:22:27.087 回答