首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当我使用PHP类时,什么也没有发生

当我使用PHP类时,什么也没有发生
EN

Stack Overflow用户
提问于 2010-07-02 04:59:28
回答 1查看 130关注 0票数 1

下面是我一直在尝试的一些代码,我在这里和那里添加了die()和echo(),但什么都没有发生,如果我尝试用对象的实例运行别人的类代码,它工作得很好,但我看不出我的代码有什么问题。

代码语言:javascript
复制
class Form {

    private $form_method; 

    public function __construct() 
    {
        $form_method = '';      
    } 

    public function setFormMethod($method) 
    {
        $this->$form_method=$method;    
    }

    public function getFormMethod()
    {
        return $this->$form_method; 
    } 

} 

$newForm = new Form();
$newForm->setFormMethod('POST');
$var = getFormMethod();

echo $var;

顺便说一下,我通过XAMPP在本地主机上运行PHP 5.3.2。

感谢您的任何帮助

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-07-02 05:03:40

我看到了一些东西。首先,当您使用"this“引用变量名时,不应在变量名中包含$。

示例:更改

代码语言:javascript
复制
return $this->$form_method; 

代码语言:javascript
复制
return $this->form_method;

对getFormMethod()的调用也不起作用,因为代码引用了类外部的方法。

变化

代码语言:javascript
复制
$var = getFormMethod();

代码语言:javascript
复制
$var = $newForm->getFormMethod();

正如Catfish建议的那样,您也可能遗漏了php标记(除非您刚刚发布了一个摘录)。

这段代码应该可以工作(未测试)

代码语言:javascript
复制
<?php
class Form {

    private $form_method; 

    public function __construct() 
    {
        $this->form_method = '';      
    } 

    public function setFormMethod($method) 
    {
        $this->form_method = $method;    
    }

    public function getFormMethod()
    {
        return $this->form_method; 
    } 

} 

$newForm = new Form();
$newForm->setFormMethod('POST');
$var = $newForm->getFormMethod();

echo $var;
?>
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3161620

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档