public function setDisplay($segments) { $active_pins = []; foreach (str_split($segments) as $segment) { if (isset($this->pinout[$segment])) { $active_pins[$this->pinout[$segment]] = $this->pinout[$segment]; } } foreach ($this->pinout as $pin) { $this->io->setPin($pin, isset($active_pins[$pin]) ? 1 : 0); } }
<?php include 'gpiohelper.php'; $io = new GPIO([1 => GPIO::OUT]); if (isset($_GET['set'])) { $io->setPin($_GET['set'], 1); } if (isset($_GET['unset'])) { $io->setPin($_GET['unset'], 0); } if (isset($_GET['toggle'])) { $pinval = $io->getPin($_GET['toggle']); $newpinval = 1 - $pinval; $io->setPin($_GET['toggle'], $newpinval); } if (isset($_GET['direction'])) { if ($io->getDirection($_GET['direction']) == GPIO::OUT) { $io->setDirection($_GET['direction'], GPIO::IN); } else { $io->setDirection($_GET['direction'], GPIO::OUT); } } ?> <!DOCTYPE html> <html> <head> <title>GPIO PHP Test Page</title> </head> <body>