PHP中=>和->以及::符號的用法
沒關系,下面我們做一下詳細的解釋,如果你有C++,Perl基礎,你會發(fā)現這些家伙和他們里面的一些符號功能是差不多的。
‘- >'符號
插入式解引用操作符”(infix dereference operator)。換句話說,它是調用由引用傳遞參數的子程序的方法(當然,還有其它的作用)。正如我們上面所提到的,在調用PHP的函數的時候,大部分參數都是通過引用傳遞的。PHP中的‘->'功能就和它們在Perl或C++中一樣。下面是一個簡單的解引用的例子:
echo $x->def(); # 輸出
‘=>'操作符
在PHP的腳本中‘=>'操作符時很常見的。因為php數組函數很豐富,我們要經常用到數組,因為它操作數據很方便。
$phparr= new array( in => 'reply,'
side => 'left',
padx => 2m,
pady => 2m,
ipadx => 2m,
ipady => 1m
)
順便說一下,如果你需要用數字“大于等于”的符號,你應該用“>=”而不是“=>”。
::域運算符
在PHP中“::”這個叫范圍解析操作符,又名域運算符
“::”符號可以認為是與C語言中的“.”相似的,而它更像C++中(Perl)的::類范圍操作符。
php調用類的內部靜態(tài)成員,或者是類之間調用就要用::
下面是一個例子:
class A
{
static $count = 0;
static function haha()
{
//
}
function diaoyoug()
{
self::haha();
self::$count;
}
}
a.b.c; /* C語言中的 */
a::b::c(); // C++ 中的函數
$a::b::c; # Perl 5中的標量
“===”(三等號)
或許有人就疑問了,此符號除了判斷兩變量是否相等外,還會判斷值類型是否一致,若值類型不一樣,則會返回False,比如:$a="1";//字符型1 $b=1;//數字型1 當執(zhí)行$a===$b;時,將返回False
“->”(減號、右尖括號)
用于類中,訪問類里的函數或對象,比如:
<?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];//數組初始化
echo $arr['a'];//數組引用
print_r($arr);//查看數組
class A{
public $a=123;
public $b=456;
}
$obj=new A();
echo $obj->a;//對象引用
print_r($obj);//查看對象
?>
輸出結果:
123Array(
[a] => 123
[b] => 456)
123A Object(
[a] => 123
[b] => 456)
3、::的用法
雙冒號操作符即作用域限定操作符Scope Resolution Operator可以訪問靜態(tài)、const和類中重寫的屬性與方法。
(1)Program List:用變量在類定義外部訪問
class Fruit {
const CONST_VALUE = 'Fruit Color';
}
$classname = 'Fruit';
echo $classname::CONST_VALUE; // As of PHP 5.3.0
echo Fruit::CONST_VALUE;
?>
(2)Program List:在類定義外部使用::
<?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)Program List:調用parent方法
<?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)Program List:使用作用域限定符
<?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)Program List:調用基類的方法
<?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 => -> ::內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
關于php程序報date()警告的處理(date_default_timezone_set)
PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function2013-10-10
thinkphp Tp6經常報錯 Call to undefined
在使用Tp6框架時經常遇到"Call to undefined method"的錯誤,這里就為大家分享一下具體的使用方法,需要的朋友可以參考下2023-08-08
php中header設置常見文件類型的content-type
這篇文章主要介紹了php中header設置常見文件類型的content-type的相關資料,需要的朋友可以參考下2015-06-06
關于file_get_contents返回為空或函數不可用的解決方案
本篇文章是對file_get_contents返回為空或函數不可用的解決方案進行了詳細的分析介紹,需要的朋友參考下2013-06-06
Yii 使用intervention/image拓展實現圖像處理功能
這篇文章主要介紹了Yii 使用intervention/image拓展實現圖像處理功能,需要的朋友可以參考下2019-06-06

