Я не могу получить какой-либо вывод из моего многомерного массива. Я пытаюсь получить мои данные с помощью метода push_array.Не удается вывести многомерный массив
Я хотел бы получить мой выход, как:
- Джон, 1001
- Том, 1002.
- Джерри, 1003.
- Сара, 1004
Однако, I» m не получает никакого выхода. Я знаю, что массив работает, хотя я получаю следующий вывод, когда я эхо-сообщение $ message и не использую $ id и $ name в моем массиве foreach вывода.
Выходной ток: (когда вторя $ сообщение)
Но ничего получает показано, когда я использую $ Id и $ имя как показано здесь.
<ul class="result"><?php
foreach ($output as $message) {
$id = $message[1][0];
$name = $message[1][1];
?><li>
<a href="handleDownload.php?id=<?php echo $id;?>"><?php echo $name; ?> </a>
</li><php } ?>
</ul>
Вот мой полный код:
<?php
$Download = new Download();
$result = array(); //store results of upload
try {
$Download->showDBFiles();
$output = $Download->getMessages();
} catch (Exception $e) {
$result[] = $e->getMessage();
}
?>
<h2>Output</h2>
<?php if ($output) { ?>
<ul class="result">
<?php foreach ($output as $message) {
$id = $message[1][0];
$name = $message[1][1];
?>
<li><a href="handleDownload.php?id=<?php echo $id;?>"><?php echo $name; ?></a></li>
<?php } ?>
</ul>
<?php } ?>
Функция где массивы определяются
protected $messages = array();
public function showDBFiles() {
global $database;
$values=array();
$sql = "SELECT resume_id, resume_title FROM ".self::$table_name;
$result = $database->query($sql);
if(mysqli_num_rows($result)==0){
$this->messages[] = "Database is empty";
}else{
while(list($id, $name) = mysqli_fetch_array($result)){
array_push($this->messages, array($id, $name));
}
}
}
public function getMessages()
{
return $this->messages;
}
UPDATE: После использования предложения по jedrzej.kurylo я могу иметь $ id и $ name, как показано в моем выводе var_dump:
массив (4) {[0] => arr ay (2) {[0] => string (2) "73" [1] => string (2) "qd"} [1] => array (2) {[0] => string (2) " 72 "[1] => string (3)" jav "} [2] => array (2) {[0] => string (2)" 70 "[1] => string (4)" da12 "} [3] => массив (2) {[0] => строка (2) "71" [1] => строка (3) "jav"}}
Однако по какой-то причине я не уверен в мой выход теперь это:
- d
показать нам свою Результаты для 'var_dump ($ output)' – Ben
"H Но я не получаю никаких результатов. Я знаю, что массив работает, хотя я получаю следующий вывод, когда я возвращаю сообщение $ message и не использую $ id и $ name в моем массиве foreach вывода. "- если вы выделяете целочисленные значения при выводе $ message, это означает, что $ message не является массивом, поэтому вы не сможете взять id и имя из него –
Я получаю: array (4) {[0] => int (1) [1] => int (2) [2] => int (3) [3] => int (4)} –