2016-11-14 10 views
-5

私はこの単純なPHPコードを持っています。私は基本的にコアPHPで新しいですし、関数は、URLを介して呼び出される前にいくつかのフレームワークを使用しました。私はどのように私はPHPの関数を呼び出す

<?php 
class calculation 
{ 
    public $x=5; $y=6; 
    public function getSum() 
    { 
     $z=$x+$y; 
     print_r($z); 
    } 
} 

どうすればgetSum()を呼び出すことができますか?私は試しました:

int main() 
{ 
    calcuation c1; 
    c1.getSum(); 
    return 0; 
} 
+0

$ OBJ =新しい計算を()スクリプトので、PHP自体が、この機能をカプセル化。 $ obj-> getSum(); –

+0

これはできません。$ z = $ x + $ y;内部関数 –

+0

良いPHPブックを入手するか、最新のPHPチュートリアルをオンラインで読む。 PHPはC++とは異なります。 –

答えて

5

あなたのコードはPHPコードではありません。より多くを学ぶためにPHP OOP basicsを参照してください

$c1 = new calculation(); 
$c1->getSum(); 

:あなたはこのようにそれをしなければならないオブジェクトのインスタンスからメソッドを呼び出すために

calculationクラスが間違っていることに注意してください。クラスのプロパティにアクセスするには、このような$this->使用する必要があります:

<?php 
class calculation 
{ 
    public $x=5; 
    public $y=6; 

    public function getSum() 
    { 
     $z= $this->x + $this->y; 
     //return $z; //would be a better way to do calculation 
     print_r($z); 
    } 
} 
3
​​

この関数を呼び出し

$obj = new calculation(); 
$obj->getSum() 
1

を私はちょうど何かを追加したいです。電卓アプリケーションを作成する場合は、getSum()関数を静的関数にしてparamsを渡すことをお勧めします。

<?php 
    class calculation 
     { 
      public static function getSum(x,y) 
      { 
       return x+y; 
      } 
     } 

     echo calculation::getSum(1,1); 

また、関数から値を戻して内部から印刷しないことをお勧めします。

このルールは、複雑なアプリケーションの場合に頭痛の種を大幅に節約します。

ところで:

int main(){ 
..... 
} 

それはいいかもしれないが、あなただけの "身体"

関連する問題