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

0
27

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
Ciberseguridad
Titre (en français)
Titre (en fran├ºais)R├®sum├® (en fran├ºais)Le vuln├®rabilit├® CVE-2026-12866 concerne le package...
Por Mario Serrano 2026-06-30 05:08:21 0 12
Ciberseguridad
Titolo (in Italian) (Italiano)
Titolo (in Italian)Sintesi (in Italian)Il CVE-2026-12866 è un vulnerabilità di sicurezza che...
Por Mario Serrano 2026-06-30 06:24:17 0 9
Ciberseguridad
┌®┘êϪÏ▒█îÏ▓█î┘ä Ï│█îÏ¿Ï▒█î┘å┌» ϺÏ│┌®┘êÏ▒█îϬ█î ϬÏ╣┘ä█î┘à█î (Urdu)
┌®┘êϪÏ▒█îÏ▓█î┘ä Ï│█îÏ¿Ï▒█î┘å┌» ϺÏ│┌®┘êÏ▒█îϬ█î ϬÏ╣┘ä█î┘à█î┘à┘éÏ»┘à█ü (Urdu)Ϻ█î┘å...
Por Mario Serrano 2026-06-30 10:51:40 0 50
Ciberseguridad
Ó«¿Ó«¥Ó«¬Ó«▓Ó»êÓ»ì (Ó«¿Ó«¥) (Ó«¿Ó«¥)
Ó«¿Ó«¥Ó«¬Ó«▓Ó»êÓ»ì (Ó«¿Ó«¥)Ó«ëÓ«▓Ó»êÓ«┤Ó«┐Ó«▓Ó»ì (Ó«¿Ó«¥)Ó«ÜÓ«▓Ó«┤Ó«┐Ó«▓Ó»ì...
Por Mario Serrano 2026-06-30 18:02:45 0 279
Otro
An├ílisis de la Vulnerabilidad Hipot├®tica CVE-2026-55653 en OpenSSH: Impacto y Consecuencias
La vulnerabilidad CVE-2026-55653 describe un fallo crítico en OpenSSH que podría permitir a un...
Por Mario Serrano 2026-06-30 04:40:04 0 116