Olá, No código:
<?php session_start(); ?>
<html>
<head>
<title>Gerenciador de Tarefas</title>
</head>
<body>
<h1>Gerenciador de Tarefas</h1>
<form action="">
<fieldset>
<legend>Nova Tarefa</legend>
<label for="">Tarefa:</label>
<input type="text" name="nome">
<input type="submit" value="Cadastrar ">
</fieldset>
</form>
<?php
if(array_key_exists('nome', $_GET)) {
$_SESSION['lista_tarefas'][] = $_GET['nome'];
}
$lista_tarefas = [];
if (array_key_exists('lista_tarefas', $_SESSION)) {
$lista_tarefas = $_SESSION['lista_tarefas'];
}
?>
<table>
<tr>
<th>Tarefas</th>
</tr>
<?php foreach ($lista_tarefas as $tarefa): ?>
<tr>
<td><?php echo $tarefa; ?></td>
</tr>
<?php endforeach; ?>
</table>
</body>
</html>
Por qual motivo se faz
$_SESSION['lista_tarefas'][]
e não apenas
$_SESSION['lista_tarefas']
e pq aparece o seguinte erro:
Warning: Invalid argument supplied for foreach() in C:\xampp\htdocs\tarefas\tarefas.php on line 36
e tambem
Uncaught Error: [] operator not supported for strings in C:\xampp\htdocs\tarefas\tarefas.php:22