Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PHP - Variabler Vergleichsoperator

Frage Entwicklung PHP

Mitglied: Boingboing

Boingboing (Level 1) - Jetzt verbinden

20.01.2012, aktualisiert 15:43 Uhr, 2170 Aufrufe, 1 Kommentar

Guten Tag,
ich habe ein Problem den richtigen Ansatz zu finden.

Vorweg, ich habe schon bei Google nach wegen gesucht, unter anderem zur Hilfenahme einer kleinen Klasse, aber irgendwie steh ich auf dem Schlauch.

Ich habe ein Objekt z.B. Kuchen. In diesem Objekt ist eine Liste mit Zutaten Gekapselt. $kuchen->Zutatenlisten.

Ich habe jetzt eine zweite Liste, die von dem Benutzer gefüllt werden kann mit:

Zutat A soll drin sein
UND Zusat B soll drin sein
ODER Zutat C soll nicht drin sein

Konkret
$list[0] = array('operator' => 'AND', 'zutat' = 'Mehl', 'contains' => true;
$list[1] = array('operator' => 'OR', 'zutat' = 'Butter', 'contains' => true;
...

Meine Überlegung ist jetzt: ich würde die Liste nach dem Operator sortieren, sie aufsplitten, alle AND Einträge auf true/false überprüfen und jeden OR eintrag seperat auf true/false überprüfen. und im Anschluss ein gesamt true erzeugen, sobald eins davon true ist?

Oder gibt es da einen viel eleganteren weg? Steh grad ein bisschen auf dem Schlauch

update:
habs mit eval() gelöst
Mitglied: dog
20.01.2012 um 17:30 Uhr
Du kannst nicht einfach zwei verschiedene Operatoren ungeklammert stehen lassen:

Zutat A soll drin sein
UND Zusat B soll drin sein
ODER Zutat C soll nicht drin sein

Tja, meinst du jetzt
(A & B) | C
oder doch
A & ( B | C )
?

habs mit eval() gelöst

Die Funktion hat mit voller Absicht nur einen Buchstaben Unterschied zum Wort EVIL!
Prinzipiell sollte die Funktion niemals verwendet werden.
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
PHP
PHP: URL kürzen (14)

Frage von michi-ffm zum Thema PHP ...

PHP
gelöst PHP 7 und LDAP mit Umlauten (3)

Frage von wiesi200 zum Thema PHP ...

Administrator.de Feedback
Entwicklertagebuch: PHP 7 (4)

Information von admtech zum Thema Administrator.de Feedback ...

Entwicklung
Was brauche ich um über PHP eine Oberfläche zu erstellen? (10)

Frage von SIMONJAKOB zum Thema Entwicklung ...

Heiß diskutierte Inhalte
CPU, RAM, Mainboards
Kaufberatung für mind. 8 verschiedene HighEnd-Mainboards (23)

Frage von yperiu zum Thema CPU, RAM, Mainboards ...

Mac OS X
Mac kann nicht im LAN pingen alle anderen schon (19)

Frage von smartino zum Thema Mac OS X ...

Hardware
gelöst PCI-Express-Adapterfrage (14)

Frage von DerWoWusste zum Thema Hardware ...

Linux Netzwerk
DHCP IP-vergabe erst nach 1-2 Minuten (11)

Frage von Maik82 zum Thema Linux Netzwerk ...