Как исправить результат PHP Array Explode Показывает только последнее значение в форме выбора?

Вы можете достичь этого несколькими способами.

let foo = {
    bar: 'Hello World'
};

foo.bar;
foo['bar'];

Обозначение скобок особенно мощно, так как оно позволяет вам получить доступ к свойству на основе переменной:

let foo = {
    bar: 'Hello World'
};

let prop = 'bar';

foo[prop];

Это может быть расширено до циклизации по каждому свойству объекта. Это может казаться излишним из-за новых конструкций JavaScript, таких как ... из ..., но помогает иллюстрировать прецедент:

let foo = {
    bar: 'Hello World',
    baz: 'How are you doing?',
    last: 'Quite alright'
};

for (let prop in foo.getOwnPropertyNames()) {
    console.log(foo[prop]);
}

Оба точечных и скобковых обозначения также работают как ожидалось для вложенных объектов :

let foo = {
    bar: {
        baz: 'Hello World'
    }
};

foo.bar.baz;
foo['bar']['baz'];
foo.bar['baz'];
foo['bar'].baz;

Деструктурирование объекта

Мы могли бы также рассмотреть разрушение объекта как средство доступа к свойству в объекте, но следующим образом:

let foo = {
    bar: 'Hello World',
    baz: 'How are you doing?',
    last: 'Quite alright'
};

let prop = 'last';
let { bar, baz, [prop]: customName } = foo;

// bar = 'Hello World'
// baz = 'How are you doing?'
// customName = 'Quite alright'
0
задан James Z 24 March 2019 в 08:46
поделиться

1 ответ

Вы передаете, затем эхо после завершения цикла, таким образом, печатая только последнее значение. То, что вы хотите:

<?php
foreach ($arr as $row1)
{
   echo "<option>" .$row1 . "</option>";
}
?>
</select>

FWIW, я предполагаю, что это происходит, потому что вы не понимаете, что происходит, когда вы опускаете фигурную скобку после объявления foreach. Оповещение о спойлере: цикл foreach завершился до ?>. Это может помочь прояснить ситуацию: PHP - If / else, for, foreach, while - без фигурных скобок?

0
ответ дан Chris Ostmo 24 March 2019 в 08:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: