вернуть несколько значений из функции

У меня есть эта функция, которая возвращает три значения при вызове.

function GetCashierDetail ($UserID){ $GetCashierID = "SELECT cashiers_CashierID,cashiers_Total,cashiers_Last_Total FROM `cashiers` WHERE `cashiers_CashierCloseDate` is null and `cashiers_Status`='0' and `cashiers_Delete` = '0' and `cashiers_User` = '".$UserID."'"; $objQueryCashierID = mysql_query($GetCashierID) or die ("Error Query [".$strSQL."]"); $GetCashierIDResult = mysql_fetch_array($objQueryCashierID); $BillsCashierID = $GetCashierIDResult['cashiers_CashierID']; $CashierTotal=$GetCashierIDResult['cashiers_Total']; $CashierLastTotal=$GetCashierIDResult['cashiers_Last_Total']; $num=mysql_affected_rows(); // Return Data return $cashier_data = array('cashierId'=>$BillsCashierID , 'CashierTotal'=>$CashierTotal , 'CashierLastTotal'=>$CashierLastTotal ); } 

теперь, когда вызывается эта функция GetCashierDetail (11) мне нужно распечатать $cashier_data на переменной, подобной этой

 $ID = $BillsCashierID 

использовать его по-другому.

я попробую

 class Bills { // Get Cashier ID function GetCashierDetail ($ausers_ID){ $GetCashierID = "SELECT cashiers_CashierID,cashiers_Total,cashiers_Last_Total FROM `cashiers` WHERE `cashiers_CashierCloseDate` is null and `cashiers_Status`='0' and `cashiers_Delete` = '0' and `cashiers_User` = '".$UserID."'"; $objQueryCashierID = mysql_query($GetCashierID) or die ("Error Query [".$strSQL."]"); $GetCashierIDResult = mysql_fetch_array($objQueryCashierID); $BillsCashierID = $GetCashierIDResult['cashiers_CashierID']; $CashierTotal=$GetCashierIDResult['cashiers_Total']; $CashierLastTotal=$GetCashierIDResult['cashiers_Last_Total']; $num=mysql_affected_rows(); // Return Data return $cashier_data = array('cashierId'=>$BillsCashierID , 'CashierTotal'=>$CashierTotal , 'CashierLastTotal'=>$CashierLastTotal); } } $BillDraftSubmit = new Bills(); $data=$BillDraftSubmit->GetCashierDetail(71); $cashierId=$data["cashierId"]; $CashierTotal=$data["CashierTotal"]; $CashierLastTotal=$data["CashierLastTotal"]; echo "cashierId".$cashierId; echo "<br>CashierTotal".$CashierTotal; echo "<br>CashierLastTotal".$CashierLastTotal; 

но я не могу получить результат

Как насчет:

 $arr = GetCashierDetail (11); extract($arr); print $cashierId." ".$CashierTotal." ".$CashierLastTotal; 
 $return = GetCashierDetail(11); $id = $return['cashierId']; 

RTM: http://php.net/manual/en/language.types.array.php

просто верните массив, нет необходимости назначать его чему-либо. т.е.

 return array('cashierId'=>$BillsCashierID , 'CashierTotal'=>$CashierTotal , 'CashierLastTotal'=>$CashierLastTotal ); 

или делать

 $cashier_data = array('cashierId'=>$BillsCashierID , 'CashierTotal'=>$CashierTotal , 'CashierLastTotal'=>$CashierLastTotal ); return $cashier_data; 

затем, когда вы возвращаете его с помощью $cd = GetCashierDetail(1); вы можете получить доступ к $cd['CashierTotal']

Почему бы не вернуть массив?

  function GetCashierDetail ($UserID){ $GetCashierID = "SELECT cashiers_CashierID,cashiers_Total,cashiers_Last_Total FROM `cashiers` WHERE `cashiers_CashierCloseDate` is null and `cashiers_Status`='0' and `cashiers_Delete` = '0' and `cashiers_User` = '".$UserID."'"; $objQueryCashierID = mysql_query($GetCashierID) or die ("Error Query [".$strSQL."]"); $GetCashierIDResult = mysql_fetch_array($objQueryCashierID); $BillsCashierID = $GetCashierIDResult['cashiers_CashierID']; $CashierTotal=$GetCashierIDResult['cashiers_Total']; $CashierLastTotal=$GetCashierIDResult['cashiers_Last_Total']; $num=mysql_affected_rows(); // Return Data return array('cashierId'=>$BillsCashierID , 'CashierTotal'=>$CashierTotal , 'CashierLastTotal'=>$CashierLastTotal ); } $user = GetCashierDetail($id); $ID = $user['cashierId']; echo $ID; 
 //$UserID - your user's id $result = GetCashierDetail ($UserID); //now just using as normal array, for example echo $result['cashierId']; 

Если я правильно понял ваш вопрос, вы хотите отобразить значение идентификатора Cashier.

Вы можете сделать это вот так.

 $cashierData = GetCashierDetail(11); $ID = $cashierData['cashierId']; echo 'cashier ID is: ' . $ID; 

Аналогичным образом вы также можете получить CashierTotal $cashierData['CashierTotal'] и так далее

Я не уверен, если я поправит тебя правильно …

 list($id,,) = GetCashierDetail(11); echo $id;