单箭头与双箭头混合搭配

Jer*_*via 1 php arrays syntax notation operands

我经常在各种代码片段中看到$var->another_var、 或$somevar=>yet_another、 或。$third_var->another=>$fourth_var

是否有一些超级令人惊叹的信息图表可以清楚地解释各种用法及其含义,特别是在 PHP 上下文中?

(就我而言,使用 Drupal,它使用大量数组,但可能在许多其他 CMS/框架中很有用。)

编辑:此后我被告知有一个包罗万象的页面,其中有一个非常有用的各种符号和语法的百科全书式列表。然而,我相信其中未涵盖的部分是 $var->element=>$anothervar 的混合搭配组合。

Jer*_*emy 5

单箭头 - T_OBJECT_OPERATOR

->

这用于访问对象属性以及与该属性关联的值。

$object->property='value'
Run Code Online (Sandbox Code Playgroud)

我有一只狗,他的名字叫船长

$dog->name='Captain';
Run Code Online (Sandbox Code Playgroud)

现在我可以访问我的狗的属性了。我们设置的属性是name

$dogName=$dog->name;
echo $dogName;
Run Code Online (Sandbox Code Playgroud)

将输出:Captain

我还可以向我的对象添加其他属性及其关联值。

$dog->weight='57lbs';
Run Code Online (Sandbox Code Playgroud)

现在我的对象有两个与之关联的属性:名称和重量。

双箭头 - T_DOUBLE_ARROW

=>

正如文档中所述,数组只是逗号分隔键和与键关联的值的映射。双箭头本质上是一个赋值运算符,它将值分配或关联到键。

$array = array("key" => "value");
Run Code Online (Sandbox Code Playgroud)

再次使用狗的例子。

$dog = array("name" => "Captain", "weight" => "57lbs");
Run Code Online (Sandbox Code Playgroud)

我们可以通过相应的键访问我的狗数组中的值。

$fatDog = $dog["weight"];
echo $fatDog;
Run Code Online (Sandbox Code Playgroud)

将输出:57lbs

单箭头和双箭头的组合

$object->property=>$value;
Run Code Online (Sandbox Code Playgroud)

这将对象/属性与键/值结合在一起。如果我们把它分解成它的组成部分,事情就会变得更加清晰。

我们知道这$object->property将产生与该财产相关的价值。让我们首先将其与变量关联起来:

$valueAssociatedWithProperty = $object->property;
Run Code Online (Sandbox Code Playgroud)

使用替换到原来的给出:

$valueAssociatedWithProperty => $value;
Run Code Online (Sandbox Code Playgroud)

我们之前已经看到它只是数组的键/值!让我们将其应用到狗的例子中,看看会出现什么结果:

$dog->name="Captain";
$description="He is crazy";
$array = array($dog->name => $description);
// $array = array("Captain" => "He is crazy");
$whatIsCaptain = $array["Captain"];
echo $whatIsCaptain;


He is crazy
Run Code Online (Sandbox Code Playgroud)

我希望这有帮助。

还可以在此处查找您可能希望得到的所有参考资料!