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, 2183 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 ..
Ähnliche Inhalte
Batch & Shell
gelöst Powershell IF Abfrage Vergleichsoperatoren (4)

Frage von Peterz zum Thema Batch & Shell ...

JavaScript
Übergabe einer php-Variable an JS

Frage von Rabauke84 zum Thema JavaScript ...

Ubuntu
gelöst PHP-Version mit Bash in Variable schreiben? (11)

Frage von StefanKittel zum Thema Ubuntu ...

PHP
gelöst HTML Dropdownmenü auslesen und in PHP als Variable übergeben (35)

Frage von ITFlori zum Thema PHP ...

Neue Wissensbeiträge
Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(3)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
Microsoft Office
Office Druck fehler (18)

Frage von DaistwasimBusch zum Thema Microsoft Office ...

Netzwerkmanagement
Windows Server 2008 R2: "netsh reset" nicht verfügbar? (11)

Frage von RickTucker zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
Uninitialisierte Festplatte - Daten retten (11)

Frage von peterla zum Thema Festplatten, SSD, Raid ...

Microsoft Office
Outlook 2016 in Ordneransicht starten - GPO (10)

Frage von D-Line zum Thema Microsoft Office ...