El siguiente ejemplo muestra un formulario para ingresar un valor y los almacena en un vector, mostrando los datos y calculando la suma.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Ingreso de Precios de Productos</title>
</head>
<body>
    <h2>Formulario de Ingreso de Precios</h2>
    <form method="post">
        <label for="precio">Precio del producto:</label>
        <input type="number" step="0.01" name="precio" id="precio" required>
        
        <!-- Campo oculto para mantener la lista de precios en cada envío -->
        <input type="hidden" name="precios_guardados" value="<?php echo isset($_POST['precios_guardados']) ? htmlspecialchars($_POST['precios_guardados']) : ''; ?>">

        <button type="submit" name="guardar">Guardar</button>
    </form>

    <?php
    // Inicializar el array de precios
    $precios = [];

    // Verificar si hay precios almacenados en el campo oculto
    if (isset($_POST['precios_guardados']) && !empty($_POST['precios_guardados'])) {
        // Convertir la cadena de precios a un array
        $precios = explode(',', $_POST['precios_guardados']);
        // Convertir cada elemento a un número flotante
        $precios = array_map('floatval', $precios);
    }

    // Verificar si el formulario ha sido enviado con un nuevo precio
    if (isset($_POST['guardar']) && isset($_POST['precio'])) {
        // Obtener el precio ingresado y convertirlo a número flotante
        $precio = floatval($_POST['precio']);
        // Añadir el precio al array
        $precios[] = $precio;
    }

    // Mostrar la lista de precios ingresados
    if (!empty($precios)) {
        echo "<h3>Lista de Precios Ingresados:</h3>";
        echo "<ul>";
        foreach ($precios as $p) {
            echo "<li>$p</li>";
        }
        echo "</ul>";

        // Calcular el total de precios
        $total = array_sum($precios);
        echo "<h3>Total de Precios: $total</h3>";
    }

    // Convertir el array de precios de vuelta a una cadena para mantenerlo en el campo oculto
    $precios_guardados = implode(',', $precios);
    ?>

    <!-- Actualizar el valor del campo oculto con la cadena de precios actualizada -->
    <script>
        document.querySelector('input[name="precios_guardados"]').value = "<?php echo htmlspecialchars($precios_guardados); ?>";
    </script>
</body>
</html>