meaning of (array)function()

时间:2014-10-16 作者:Adam

我看到了这段代码,其中包含了我以前从未见过的部分代码。在此场景中,(数组)的行为是什么?到目前为止,我知道用php创建数组的方法,但从未见过这种情况。

//

    $this->settings = array_merge( $this->settings_defaults(), (array) get_option( $this->settings_slug, $this->settings_defaults() ) );

   //  

1 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

您正在查看类型转换:http://php.net/manual/en/language.types.type-juggling.php

代码所做的是对get_option() 到阵列。这样做是为了array_merge() 工作正常,不会触发警告/错误。这是纯粹的PHP,与主题无关。我选择回答而不是发表评论的唯一原因是get_option() 将根据上下文返回各种类型的数据。您可以在来源中看到:

@param bool |混合$pre\\u选项值以返回,而不是选项值。

https://core.trac.wordpress.org/browser/tags/4.0/src/wp-includes/option.php#L42

这意味着您必须操作返回数据,以确保所处理的数据类型。

结束

相关推荐

Auth.php中基于作者角色的条件标签

是否有任何方法可以在author.php 配置文件模板取决于显示的配置文件的角色?(不是指查看它的人,而是指特定个人资料所指的作者)。如果正在显示具有角色的作者的配置文件editor, 然后会显示一些内容,如果配置文件属于具有角色的作者contributor, 然后会显示一些其他内容。我还没有找到任何答案。能做到吗?