Crear una calculadora científica en PHP con almacenamiento de operaciones y resultados

0
57

Archivo: calculator.php

<?php // Implementación de la política de seguridad de contenido, X-Frame-Options y X-Content-Type-Options nosniff en la respuesta HTTP. class Calculator { private $history = []; private $sessionToken; public function __construct($sessionToken) { $this->sessionToken = $sessionToken; // Cargar historia desde archivo si existe if (file_exists('history.json')) { $this->history = json_decode(file_get_contents('history.json'), true); } } public function sumar($a, $b) { return $a + $b; } public function restar($a, $b) { return $a - $b; } public function multiplicar($a, $b) { return $a * $b; } public function dividir($a, $b) { if ($b == 0) { throw new Exception('División por cero'); } return $a / $b; } public function potencia($base, $exponente) { return pow($base, $exponente); } public function factorial($n) { if (!is_int($n) || $n < 0) { throw new Exception('Factorial no definido para números negativos'); } $resultado = 1; for ($i = 2; $i <= $n; $i++) { $resultado *= $i; } return $resultado; } public function guardarHistoria() { file_put_contents('history.json', json_encode($this->history)); } public function agregarOperacion($operacion, $resultado) { array_push($this->history, ['operacion' => $operacion, 'resultado' => $resultado]); } } ?>

Uso

$calculator = new Calculator('token_de_sesion'); $calculator->agregarOperacion('2 + 2', $calculator->sumar(2, 2)); $calculator->guardarHistoria();
Buscar
Categorías
Leer más
Otro
CVE-2026-12866 : Detay─▒ (Turkish)
CVE-2026-12866 : DetayıÖzetexpr-eval paketinin tüm veya bir kısmını, üst bileşenden gelen...
Por Mario Serrano 2026-06-30 06:01:52 0 34
Otro
Calculadora Científica PHP: Guarda Cálculos y Historial Web
En este artículo, exploraremos cómo construir una calculadora científica funcional utilizando...
Por Mario Serrano 2026-06-30 03:16:28 0 18
Ciberseguridad
CVE-2026-4983 - Detalle CVSS, EPSS y CISA Kev | CVE Find (Bengali)
ÓªÂÓºüÓªºÓºüÓª«Óª¥ÓªñÓºìÓª░ Óª¬ÓºìÓª░ÓªñÓª┐ÓªÀÓºìÓªáÓª¥Óª¿ÓºçÓª░ Óª©Óª¥ÓªÑÓºç Óª»ÓºïÓªùÓª¥Óª»Óª╝...
Por Mario Serrano 2026-06-30 17:22:14 0 11
Ciberseguridad
Ó╣ÇÓ©äÓ©úÓ©ÀÓ╣êÓ©¡Ó©çÓ©íÓ©ÀÓ©¡Ó©üÓ©▓Ó©úÓ©ØÓ©ÂÓ©üÓ©¡Ó©ÜÓ©úÓ©íÓ©öÓ╣ëÓ©▓Ó©ÖÓ©äÓ©ºÓ©▓Ó©íÓ©øÓ©ÑÓ©¡Ó©öÓ©áÓ©▒Ó©óÓ©ùÓ©▓Ó©çÓ©äÓ©¡Ó©íÓ©×Ó©┤Ó©ºÓ╣ÇÓ©òÓ©¡Ó©úÓ╣î (Thai)
Ó╣ÇÓ©äÓ©úÓ©ÀÓ╣êÓ©¡Ó©çÓ©íÓ©ÀÓ©¡Ó©üÓ©▓Ó©úÓ©ØÓ©ÂÓ©üÓ©¡Ó©ÜÓ©úÓ©íÓ©öÓ╣ëÓ©▓Ó©ÖÓ©äÓ©ºÓ©▓Ó©íÓ©øÓ©ÑÓ©¡Ó©öÓ...
Por Mario Serrano 2026-06-30 10:08:53 0 54
Ciberseguridad
CVE-2026-4983 - Ó«ñÓ»åÓ«│Ó«┐Ó«òÓ»ìÓ«òÓ»üÓ«▒Ó«┐Ó«»Ó«┐Ó«▓Ó»ì Ó«ÜÓ«░Ó«┐Ó«»Ó«¥Ó«® Ó««Ó«ñÓ«┐Ó«¬Ó»ìÓ«¬Ó»ü, EPSS Ó««Ó«▒Ó»ìÓ«▒Ó»üÓ««Ó»ì CISA Kev | CVE Find (Tamil)
CVE-2026-4983 - Ó«ñÓ»åÓ«│Ó«┐Ó«òÓ»ìÓ«òÓ»üÓ«▒Ó«┐Ó«»Ó«┐Ó«▓Ó»ì Ó«ÜÓ«░Ó«┐Ó«»Ó«¥Ó«®...
Por Mario Serrano 2026-06-30 18:02:02 0 287