2015-08-08 60 views
1

這是我的代碼。它給了我一個錯誤。我是PHP中OOP的新手,請幫助我解決這個特定問題。我怎樣才能得到在OOP程序輸出在PHP

代碼如下:

<?php 
class myclass 
{ 
    var $name; 
    //public $vari="this is my class "; 
    public function setvalue($newval) 
    { 
     $this->$name=$newval; 
    } 
    public function getvalue() 
    { 
     return $this->name; 

    } 
} 

$object= new myclaas; 
$object->setvalue("usman"); 
echo $object->getvalue(); 
?> 

錯誤如下:

Fatal error: Class 'myclaas' not found in E:\wamp\www\oops\myclass.php on line 19 

回答

1

最後編輯 -

class myclass 
{ 
var $name; 

public function setvalue($newval) 
{ 
    $this->name=$newval;  //variable calling was incorrect 
} 
public function getvalue() 
{ 
    return $this->name; 
} 
} 



$object= new myclass; //class name correction 
$object->setvalue("usman"); 
echo $object->getvalue(); 
+0

感謝你和stackoverflow bidaway什麼是th e問題 –

+0

類名和($ this-> name)的拼寫錯誤以正確的方式訪問類變量(this this)($ this - > $ name)。我希望我的代碼能夠被標記爲正確。 –

2

這些都是在你的代碼中的兩個錯誤。 您在實例化類時沒有正確鍵入類名。您的類名是myclass,但是您鍵入了類名myclaas。

代碼

$object= new myclaas; 

請參見下面的修正線。

$object= new myclass; 

當您訪問使用$這個僞變量不插入變量前的美元符號的類屬性(在你的代碼中看到在$名稱$符號,你不需要它) 。

你的代碼看起來象

$this->$name = $newval; 

您需要更改代碼以

$this->name = $newval; 

更新代碼

<?php 
class myclass 
{ 
    var $name; 

    public function setvalue($newval) 
    { 
     $this->name=$newval; 
    } 
    public function getvalue() 
    { 
     return $this->name; 

    } 
} 

$object= new myclass; 
$object->setvalue("usman"); 
echo $object->getvalue(); 
?> 

感謝和有一個好:)

+0

非常感謝你的先生 –

+0

歡迎兄弟:) :) –