Мне нужно вывести все книги со всех полок.Этот код ниже выводит только последнюю полку книг.Любая помощь будет полезна.
Мой контроллер:
function index()
{
$data['books'] = $this->_books();
$this->load->view('books_view', $data);
}
function _books() {
$xml = simplexml_load_file('books.xml');
foreach ($xml->shelfs as $shelf)
{
$result = '<optgroup label="'.$shelf['id'].'">';
foreach ($shelf->books as $book)
{
$result .= '<option value="'.$book->title.'">'.$book->title.'</option>';
}
$result .= '</optgroup>';
}
return $result;
}
Мой просмотр:
echo form_open('books#');
echo '<select name="books[]" multiple="multiple" onClick="this.form.submit()">';
echo $options;
echo '</select></form>';
Мой вывод:
только последняя полка, которая является"Z".
Мои данные XML:
<?xml version="1.0" encoding="UTF-8" ?>
<library>
<shelfs id="A">
<strip>
<title>Book Title #1 for A</title>
<author>Author Name #1 for A</author>
</strip>
<strip>
<title>Book Title #2 for A</title>
<author>Author Name #2 for A</author>
</strip>
</comics>
...
<shelfs id="Z">
<strip>
<title>Book Title #1 for Z</title>
<author>Author Name #1 for Z</author>
</strip>
<strip>
<title>Book Title #2 for Z</title>
<author>Author Name #2 for Z</author>
</strip>
</comics>
</library>