数组在一个进程和另一个进程之间丢失 - 如何传递数组?

时间:2016-08-07 09:23:35

标签: php arrays

嗨,我在OOP上不热,在这里搜索无法找到答案。我有一个进程称它为p1.php,其中 $ user 数组应该在p2.php中可用,但不是。会发生什么情况是在p1.php中设置$ user,但在输入p2.php时为空,但在返回p1.php时重新设置可以有人建议为什么?我知道我可以通过函数调用传递$ user但这不是练习的对象; - )

    //p1.php    
if ($user->user_data['startemailmode'] == 'yes')
{                                        $send_email->confirmation($auctionData->auction_id, $auctionData->title, $auctionData->atype, $auctionData->pict_url, $auctionData->minimum_bid, $auctionData->reserve_price, $auctionData->buy_now_price, $auctionData->ends);}

 //p2.php
   public function confirmation($auction_id, $title, $atype, $pict_url, $minimum_bid, $reserve_price, $buy_now_price, $a_ends)
{   
       if (!isset($user->user_data['name'])) return null;   
        $this->emailer->assign_vars(array(.....

1 个答案:

答案 0 :(得分:0)

您好我找不到我要找的答案所以我通过使用全局变量(全局$ user)进行了妥协,这与我在C中使用过的这个变量不同,一旦声明这个变量,就会使另一个过程中的变量可用到当地程序:

        public function confirmation($auction_id, $title, $atype, $pict_url, $minimum_bid, $reserve_price, $buy_now_price, $a_ends)
{   
        global $user;
        if (!isset($user->user_data['name'])) return null;

感谢Mike在下面找到了正确的答案。