我认为这是一个相当好的问题,所以我稍微修改了一下。似乎使用直接法([icon=\'myicon\']
) 与使用属性相比,使用direct方法时,不能使用空格,因为它将拆分为单独的属性,即使使用引号,并且引号和等号被视为值的一部分。例如:aprint_r( $atts )
在…上[dev_dump http://example.com/test.jpg]
退货Array ( [0] => http://example.com/test.jpg )
, 鉴于aprint_r( $atts )
在…上[dev_dump=\'my icon\']
退货Array ( [0] => =\'my [1] => icon\' )
. 尽管如此,[dev_dump foo=\'bar\' http://example.com/test.jpg]
确实给了你Array ( [foo] => bar [0] => http://example.com/test.jpg )
, 因此,只要只有一个未标记的值,就应该非常安全地使用该方法,因为您可以只使用$atts[0]。在设置默认值时要小心,因为我可以看到这会很快变得棘手和有问题。
谢谢你问了一个很好的问题,真的让我思考!