使用PHP全局变量

时间:2015-11-03 07:10:57

标签: php wordpress

我正在尝试将我的常规php构建脚本集成到wordpress中。我被困在一个功能完美的地方之前,但不是在wordpress环境中。

在下面的代码中,我在我的ajax请求中得到了空白数组,而我在myFunc中有结果(我已经通过将wp_send_json放入其中进行了测试)。

我需要更改任何内容才能在wordpress中使用PHP全局变量吗?

$final = array();
function myFunc(){
        global $wpdb;
        global $final;
        $sql = 'SELECT .......';
        $result = $wpdb->get_results($sql);
        if($wpdb->num_rows > 0){
            foreach ( $result as $row ) {
                $final[] = $row->pdate;
            }
            return true;
        }
        return false;
}
myFunc();
wp_send_json($final);

2 个答案:

答案 0 :(得分:0)

这应该可行,但是全局变量是令人讨厌的东西,并且经常会发生冲突我建议只是从函数中返回数组。

e.g。

JumboEnumSet(Class<E>elementType, Enum[] universe) {
   super(elementType, universe);
   elements = new long[(universe.length + 63) >>> 6];
}

答案 1 :(得分:0)

您可以使用以下语句从函数中获取更新值。

  $arr = array();
   function myFunc($new_arr){
            global $wpdb;
            $sql = 'SELECT .......';
            $result = $wpdb->get_results($sql);
            if($wpdb->num_rows > 0){
                foreach ( $result as $row ) {
                    $new_arr[] = $row->pdate;
                }

            }
           //It will return updated array if result having rows.Otherwise return empty array.
           return $new_arr;
    }
    $final = myFunc($arr);
    if(!empty($final))//if block will be execute if myFunc doesn't return empty array.
    {
       wp_send_json($final);
    }