有人可以解释这个变量有什么样的结构吗?

时间:2015-08-28 16:57:04

标签: php

for($i = 0; $i < count($all_events); $i++) {

    $temp_event = $this->model_events->find_event($all_events[$i]['event_id']);
    $data['attending_events'][$i]['event_id'] = $temp_event[0]['event_id'];
    //return everything from the ticket table based on the event id
    $ticket_data = $this->model_tickets->get_ticket_owner($data['attending_events'][$i]['event_id']);
    for($j = 0; $j < count($ticket_data); $j++) {
        $data['attending_events'][$i]['tickets'][$j] = $ticket_data[$j];
    }
        $data['attending_events'][$i]['e_name'] = $temp_event[0]['e_name'];
        $data['attending_events'][$i]['e_date'] = $temp_event[0]['e_date'];
        $data['attending_events'][$i]['e_price'] = $temp_event[0]['e_pricetemp'];
        $data['attending_events'][$i]['e_is_address_hide'] = $temp_event[0]['e_is_address_hide'];
}

我是php的新手,我对变量结构感到非常困惑。正如您在上面的代码中看到的,有一个名为$data的变量。这是我不理解的变量。

首先,在$data['attending_events']中,attending_events是一个索引,就像数组[0]或其他东西一样?

$i中的$data['attending_events'][$i]['e_price']号码是多少?

最后这是'$data['attending_events'][$i]['tickets'][$j]'是什么?这是另一层吗?

我熟悉C ++。这是$data变量,类似于多维数据向量?

1 个答案:

答案 0 :(得分:1)

是的,$ data是一个多维数组。正如Rizier123告诉你的那样,做一个print_r($data),并在浏览器中使用“查看页面源”命令来查看整个层次结构是否正确缩进。

如果您需要有关每个元素的更多信息(例如类型),请使用var_dump($data)

如果您熟悉C ++,您可能会担心它的分配方式,它有多少维度等等。但是,它完全是动态的。您可以通过设置值来创建新的元素和尺寸,如下所示:

$data['attending_events'][$i]['tickets'][$j][1]['another dimension']['yet another one'] = 10;