0

みんな、おはよう、

私の問題は foreach ループにあるようですが、問題がわかりません。

配列を印刷すると、選択ステートメントからこれを取得します。

array(41) {
  [0]=> array(4) {
    ["id"]=>
    string(1) "1"
    ["name"]=>
    string(14) "Indoor Cycling"
    ["time"]=>
    string(12) "6.15am – 7am"
    ["day"]=>
    string(1) "1"
  }
  [1]=> array(4) {
    ["id"]=>
    string(2) "73"
    ["name"]=>
    string(11) "Fast Blast "
    ["time"]=>
    string(6) "7.10am"
    ["day"]=>
    string(1) "5"
  }
}

そこで、各ループの標準を試します。

foreach ($rows as $timetableitems) {
    $timetablearray[] = array(
        'name' => $timetableitems->name,
        'time'  => $timetableitems->time,
    );              
}

しかし、$timetablearray を var ダンプしようとすると、次のようになります。

array(41) {
  [0]=>
  array(2) {
    ["name"]=>
    NULL
    ["time"]=>
    NULL
  }
  [1]=>
  array(2) {
    ["name"]=>
    NULL
    ["time"]=>
    NULL
  }

どんな助けでも大歓迎です、ありがとう。

4

3 に答える 3

4
foreach ($rows as $timetableitems) {
    $timetablearray[] = array(
        'name' => $timetableitems['name'],
        'time'  => $timetableitems['time'],
    );              
}

arrayから変数にアクセスすることはできません$timetableitems->name。使用する必要があります$timetableitems['name']

于 2013-08-20T10:49:47.953 に答える
4

呼び出す代わりに:

$timetableitems->name

使用する:

$timetableitems['name']

$timetableitemsオブジェクトではなく配列だからです。そのため、キーを使用してそのプロパティにアクセスします。

于 2013-08-20T10:49:51.417 に答える
0

$timetableitems['name']代わりに試してください$timetableitems->name

$timetableitems$timetableitems[]は配列なので、この形式を使用できます

于 2013-08-20T12:56:39.253 に答える