此PHP函数中的某些内容未按预期工作

此PHP函数中的某些内容未按预期工作,php,Php,我试图从MySQL中提取数据,这应该显示完整的数据,但这只显示一行。这应该显示所有的用户行。我不知道我做错了什么: 代码如下: function getCashoutRequests($uid, $limit) { if (!empty( $limit )) { $query = mysql_query( '' . 'SELECT * FROM cashouts WHERE uid = ' . $uid . ' ORDER BY id DESC LIMIT ' . $limit ); }

我试图从MySQL中提取数据,这应该显示完整的数据,但这只显示一行。这应该显示所有的用户行。我不知道我做错了什么:

代码如下:

function getCashoutRequests($uid, $limit) {
if (!empty( $limit )) {
    $query = mysql_query( '' . 'SELECT * FROM cashouts WHERE uid = ' . $uid . ' ORDER BY id DESC LIMIT ' . $limit );
}
else {
    $query = mysql_query( '' . 'SELECT * FROM cashouts WHERE uid = ' . $uid . ' ORDER BY id DESC' );
}


if (mysql_num_rows( $query )) {

    if ($row = mysql_fetch_object( $query )) {
        $row->id;
        $amount = $row->amount;
        $status = $row->status;
        $client_notes = nl2br( $row->user_notes );
        $admin_notes = nl2br( $row->admin_notes );
        $request_date = $row->request_date;
        $payment_date = $row->payment_date;
        $fee = $row->fee;
        $priority = $hid = $row->priority;
        $method = $row->method;

        if ($payment_date != '0000-00-00 00:00:00') {
            $payment_date = date( 'd M, Y', strtotime( $payment_date ) );
        }

        $request_date = date( 'd M, Y', strtotime( $request_date ) );

        $payHistory []= array( 'id' => $hid, 'cash' => $amount, 'status' => $status, 'method' => $method, 'client_notes' => $client_notes, 'admin_notes' => $admin_notes, 'date' => $request_date, 'payment_date' => $payment_date, 'fee' => $fee, 'priority' => $priority );
    }

    return $payHistory;
}

return false;
}

在这一行中,您有
如果

if ($row = mysql_fetch_object( $query )) {
如果使用
If
,则只会返回第一个值,因为
If
只需测试一次条件。相反,请像这样尝试

while ($row = mysql_fetch_object( $query )) {
如PHP手册条目中所述:

while语句的含义很简单。它告诉PHP执行 只要while表达式 计算结果为TRUE