Как получить индекс элемента в классе ArrayObject - PullRequest
0 голосов
/ 14 апреля 2019

Я реализую класс, унаследовав PHP-класс ArrayObject.Но я не могу найти, как получить индекс массива во время итерации.Я хочу показать ключ и значение

class TestArrayObject extends ArrayObject {
    public function displayAsTable() {
        $iterator = $this->getIterator();
        // Table
        echo '<table border="1">';
        echo '<tr>';
        echo '<th>Keys</th><th>Values</th>';
        echo '</tr>';
        while ($iterator->valid()) {
            echo '<tr>';
            echo '<td>'.$iterator->current().'</td><td>'.$iterator->current().'</td>';
            echo '</tr>';
            $iterator->next();
        }
        echo '</table>';
    }
}

$arrFruits = array('Apple','Banana', 'Mango');
$objArr = new TestArrayObject($arrFruits);
$objArr->displayAsTable();

Кто-нибудь может мне помочь?

1 Ответ

0 голосов
/ 14 апреля 2019

Я изменил следующую строку, и она работает нормально

'<td>'.$iterator->key().'</td><td>'.$iterator->current().'</td>'

Для получения дополнительной информации см. Здесь

...