1. ホーム
  2. Web プログラミング
  3. PHP プログラミング
  4. phpのヒント

PHPにおける=>と->と::記号の使用法

2022-01-15 19:34:18

C++やPerlの基礎知識があれば、こいつらと似たような記号があることがわかると思います。

'- >' シンボル

挿入型デリファレンス演算子」(infix dereference operator)です。つまり、引数を参照渡しするサブルーチンを呼び出すためのものです(もちろん、他のものも含みますが)。上で述べたように、PHPの関数を呼び出す場合、ほとんどの引数は参照渡しで、PHPの「->」関数は、PerlやC++と同じです。以下は、デリファレンスの簡単な例です。

  echo $x->def(); # 出力  

'=>' オペレータ

PHPスクリプトでは、'=>'演算子は非常によく使われます。phpの配列関数が充実しているため、データの操作がしやすく、配列を多用することになります。

  $phparr= new array( in => 'reply,' )

  side => '左',

  padx => 2m,

  pady => 2m,

  ipadx => 2m,

  ipady => 1m

  )

ちなみに、数字「以上」の記号を使う必要がある場合は、「=>」ではなく「>=」を使うようにしましょう。

フィールド演算子

PHP では "::" は範囲解決演算子と呼ばれ、ドメイン演算子としても知られています。  

この「:」という表記は、C言語の「.」に近いと考えることができ、C++(Perl)の「:」クラスの範囲演算子に近いと言えます。

php は、クラスの内部静的メンバ、またはクラス間を次のように呼び出します。

以下はその一例です。

クラスA
{
静的 $count = 0;
静的関数 haha()
{
/
}
関数 diaoyoug()
{
self::haha()。
self::$count;
}
}

a.b.c; /* C言語で *。

a::b::c(); // C++の関数

Perl 5 ではスカラ。

"====" (三つ組記号)

おそらく一部の人々は、このシンボルは、2つの変数が等しいかどうかに加えて、値のタイプが同じであるかどうかを判断します、値のタイプが異なる場合、それは偽を返します、例えば: $a="1";//文字型1 $b=1;//数値型1 $aの実行時== $b;, それは偽を返します。

"->" (マイナス、右カギカッコ)

クラス内で、クラス内の関数やオブジェクトにアクセスするために使用します。

<?php 
class Test { 
function do_test() {
 echo "Doing foo."; 
} } 
$bar = new Test; 
$bar->do_test(); 
? >

"=>" (等号、右カギカッコ)

配列に値を代入する。例えば $arr=array("one" => ("1"=>10, "2"=>20), "two"=>2); とすると $arr["one"]["1"]=10 となる。

PHP の => と -> と :: の使用法について詳しく説明します。

1. の使用法 =>

phpの配列のキー名のデフォルトは整数ですが、以下のように任意の文字のキー名(できれば実際の意味を持つもの)を定義することもできます。 

$css=array('style'=>'0', 'color'=>'green');

なら $css['style']=='0' で $css['color']=='green' です。

2. の使用法 →

-> は、オブジェクトのメンバー(プロパティやメソッド)を参照するために使用されます。

$arr=['a'=>123,'b'=>456];//array initialization
echo $arr['a'];//array reference
print_r($arr);//View the array
class A{
    public $a=123;
    public $b=456;
}
$obj=new A();
echo $obj->a;//object reference
print_r($obj);//view object
? >

出力結果です。

123Array(
    [a] => 123
    [b] => 456)
123A オブジェクト(
    [a] => 123
    [b] => 456)

3. の使用法 ::

スコープ解決演算子であるダブルコロン演算子は、static、const、クラスオーバーライドされたプロパティやメソッドにアクセスすることができます。

(1)プログラムリスト。クラス定義の外側で変数を使ってアクセスする

class Fruit {
    const CONST_VALUE = 'Fruit Color';
}
$classname = 'Fruit';
echo $classname::CONST_VALUE; // As of PHP 5.3.0
echo Fruit::CONST_VALUE;
? >

(2) プログラムリスト: クラス定義の外部で : を用いて定義する。

    
  <?php 
  class Fruit { 
      const CONST_VALUE = 'Fruit Color'; 
  } 
   
  class Apple extends Fruit 
  { 
      public static $color = 'Red';
  
      public static function doubleColon() {
          echo parent::CONST_VALUE . "\n";
          echo self::$color . "\n";
      }
  }
  
  Apple::doubleColon();
  ? >

(3) 番組表:親メソッドを呼び出す

  <?php 
  class Fruit 
  { 
      protected function showColor() { 
          echo "Fruit::showColor()\n"; 
      } 
  } 
   
  class Apple extends Fruit
  {
      // Override parent's definition
      public function showColor()
      {
          // But still call the parent function
          parent::showColor();
          echo "Apple::showColor()\n";
      }
  }
  
  $apple = new Apple();
  $apple->showColor();
  ? >

(4)番組表。スコープ修飾子を使用

プレ <?php class Apple { public function showColor() { return $this->color; } } class Banana12 { public $color; public function __construct() { $this->color = "Banana is yellow"; } public function GetColor() { return Apple::showColor(); } } $banana = new Banana; echo $banana->GetColor(); ? >

(5) プログラムリスト:ベースクラスのメソッドを呼び出す

       
  <?php 
   
  class Fruit 
  { 
      static function color() 
      { 
         return "color"; 
      }
  
      static function showColor()
      {
          echo "show " . self::color();
      }
  }
  
  class Apple extends Fruit
  {
      static function color()
      {
          return "red";
      }
  }
  
  Apple::showColor();
  // output is "show color"!
  
  ? >

PHPのシンボル => と -> と :: の使用に関するこの記事が全てです、もっと関連するPHP => -> :: の内容はBinaryDevelopの過去の記事を検索するか、以下の関連記事を引き続きご覧下さい、今後ともBinaryDevelopをよろしくお願いします