可能的重复: 在哪里我们使用对象操作符“->”在PHP 这个符号在PHP中是什么意思?

我在PHP中经常看到这些,但我不知道它们到底是什么意思。->做什么和=>做什么。我说的不是运算符。它们是别的东西,但似乎没人知道……


=>用于关联数组键值分配。来看看:

http://php.net/manual/en/language.types.array.php。

—>用于访问对象方法或属性。例子:$ obj - >方法()。


->

调用/设置对象变量。 例:

$obj = new StdClass;
$obj->foo = 'bar';
var_dump($obj);

= > 为数组设置键/值对。例:

$array = array(
    'foo' => 'bar'
);
var_dump($array);

—>用于在类的对象上调用方法或访问属性

=>用于为数组的键赋值

例如:

    $ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34, 1=>2); 

自PHP 7.4+以来,operator =>也被用于添加的箭头函数,这是一种更简洁的匿名函数语法。


双箭头操作符=>用作数组的访问机制。这意味着在数组上下文中,它左边的值将与右边的值相对应。这可用于将任何可接受类型的值设置为数组的相应索引。索引可以是关联的(基于字符串的)或数值的。

$myArray = array(
    0 => 'Big',
    1 => 'Small',
    2 => 'Up',
    3 => 'Down'
);

对象操作符->在对象作用域中用于访问对象的方法和属性。它的意思是说,在操作符右边的是实例化到操作符左边变量的对象的成员。实例化是这里的关键术语。

// Create a new instance of MyObject into $obj
$obj = new MyObject();
// Set a property in the $obj object called thisProperty
$obj->thisProperty = 'Fred';
// Call a method of the $obj object named getProperty
$obj->getProperty();