Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Funkcje pomagające w odczytywaniu wartości z liczby typu SET
Forum PHP.pl > Forum > PHP
Dwako
Witam,
szukam funkcji w PHP pomocnych w odczytywaniu wartości w liczbie typu SET w bazie danych.
Taki mechanizm działa w Linuxie w podczas nadawania praw dostępu do pliku.
Czyli jeśli mamy 3 wartości: czerwony, zielony, niebieski, czarny i
czerwony - 1,
zielony - 2,
niebieski - 4,
czarny - 6
to przy wybraniu zielonego i czarnego mamy liczbę 8 (2 + 6). Jak na podstawie tej liczby odczytać zsumowane wartości w niej?
Kicok
Po pierwsze to:
czerwony - 1,
zielony - 2,
niebieski - 4,
czarny - 8

Po drugie poczytaj o operatorach bitowych. Potrzebny ci będzie iloczyn oraz przesunięcie bitowe.
( Ewentualnie sam iloczyn, jeśli nie chcesz teg robić przy pomocy pętli )
Dwako
Co do liczby dla czarnego - faktycznie - mój błąd.
Dziękuję za nakierowanie. Wbudowanych funckji w php nie znalazlem, moze trafie na jakas biblioteke, a jak nie to bede kombinowal.

pozdrawiam
nevt
nie musisz kombinować, PHP ma wbudowane operatory binarne,możesz zrobić coś w rodzaju:
  1. <?php
  2. $colors = array('czerwony' => 1, 'zielony' => 2, 'niebieski' => 4, 'czarny' => 8);
  3.  
  4. $set = 13;  //przykładowy zbiór bitów
  5.  
  6. foreach($colors as $name => $color)
  7.  if(($color & $set) == $color))
  8.   echo "Jest $name !<br />";
  9. ?>

powodzenia.
Dwako
nevt, śliczne dzięki smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.