看看这个红宝石的例子:
puts ["Dog","Cat","Gates"][1]
这将输出Cat
,因为ruby允许我直接访问创建的“匿名”数组。
但是,如果我在PHP中尝试这个:
echo array("Dog","Cat,"Gates")[1]
这不起作用。
当您知道如何调用此“功能”时,请随意更改问题标题。
答案 0 :(得分:2)
PHP没有这样的语言构造。它是proposed for PHP 6,但被拒绝了。
答案 1 :(得分:1)
在Ruby中,[]
只是一个方法调用(obj[1]
是obj.[](1)
的语法糖)所以[“Dog”,“Cat”,“Gates”之间没有语义差异] [1]和[“狗”,“猫”,“盖茨”]。切片(1)。许多在Ruby中看起来像“运算符”的语法结构实际上是方法,它们通常可以在您自己的自定义类上定义。例如:
class Foo
def [](index)
puts "you tried to get something at #{index}"
end
end
f = Foo.new
f[12]