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

Problem mit Funktion empty()

Frage Entwicklung PHP

Mitglied: ITIL-Harry

ITIL-Harry (Level 1) - Jetzt verbinden

27.01.2010 um 22:37 Uhr, 4238 Aufrufe, 4 Kommentare

Finde keine Funktion, die das zurückliefert, was ich will

Hi @ all,

dies ist ein Anfängerproblem und ich dachte eigentlich nicht, dass mir das solche Schwierigkeiten macht:

habe eine Webseite, auf der ich Fussballergebnisse ausgebe. Mit empty() versuche ich zu prüfen, ob bereits ein Ergebnis eingegeben wurde.
Falls nicht, steht in der MySQL-DB NULL drin. die 0 ist hierbei falsch, da ein Spiel ja auch 0:irgendwas ausgehen kann.
Das komplette Ergebnis abzufragen bringt auch nichts, weil ein Spiel ja auch 0:0 ausgehen kann (soll ja mal vorkomen):

Leider liefert empty() auch dann TRUE, wenn das Datenfeld eine 0 beinhaltet.
Weiss hier jemand eine Funktion, die für ein leeres Feld nur dann TRUE liefert, wenn das Feld tatsächlich NULL ist ?

Bei selfphp hab ich leider nichts entsprechendes gefunden.

Danke und Gruß
ITIL-Harry
Mitglied: Arano
28.01.2010 um 00:21 Uhr
Hallo ITIL-Harry,

ich kenne eine Funktion, sie nenne sich PHP-Manual - is_null().
Alternativ dazu könntest du das auch in einer Bedingung prüfen wenn du anstelle von "==", "===" verwendest, dann wird nämlich auch der Type verglichen:
01.
<?php 
02.
 
03.
$var1 = 0; 
04.
if(NULL ==  $var1) echo '$var1 ==  NULL'.PHP_EOL; 
05.
if(NULL === $var1) echo '$var1 === NULL'.PHP_EOL; 
06.
// Ausgabe: 
07.
// $var1 ==  NULL 
08.
 
09.
$var2 = NULL; 
10.
if(NULL ==  $var2) echo '$var2 ==  NULL'.PHP_EOL; 
11.
if(NULL === $var2) echo '$var2 === NULL'.PHP_EOL; 
12.
// Ausgabe: 
13.
// $var2 ==  NULL 
14.
// $var2 === NULL 
15.
 
16.
?>
~Arano
Bitte warten ..
Mitglied: nxclass
28.01.2010 um 09:10 Uhr
isset() sollte auch funktionieren.

Aber wie wäre es wenn deine SQL Abfrage schon 'n/a' zurück liefert ?
SELECT ... IF( `spalte` IS NULL, 'n/a', `spalte`) ...
Bitte warten ..
Mitglied: Arano
28.01.2010 um 11:18 Uhr
Zitat von nxclass:
isset() sollte auch funktionieren.
Nee, ich glaube hier nicht !
Zitat von php.net/isset:
isset — Determine if a variable is set and is not NULL
Er wollte ja auf genau NULL geprüft haben
Außerdem sollte man wenn man den INHALT einer Variablen prüfen möchte die entsprechenden Funktionen verwenden (sofern es sie gibt) und nicht mit anderen. Schließlich wird mit isset() die Existenz der Variable überprüft.


~Arano
Bitte warten ..
Mitglied: ITIL-Harry
28.01.2010 um 13:46 Uhr
Danke, genau das wars

Warum finde ich so einen einfachen und sprechnden Funktionsnamen wie "is_null()" nicht --- muss blind gewesen sein !!!

Vielen Dank !!!

Gruß
ITIL-Harry
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Problem mit Funktion und Combobox (7)

Frage von Druide83 zum Thema Batch & Shell ...

Windows Server
Problem mit Webdav und Webserver IIS (3)

Frage von JUJUS31 zum Thema Windows Server ...

Netzwerkgrundlagen
Multi NAT Problem (9)

Frage von Gr33n93 zum Thema Netzwerkgrundlagen ...

Neue Wissensbeiträge
Batch & Shell

Batch als Dienst bei Systemstart ohne Anmeldung ausführen

Tipp von tralveller zum Thema Batch & Shell ...

Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Heiß diskutierte Inhalte
Exchange Server
Exchange 2016 Standard Server 2012 R2 Hetzner Mail (36)

Frage von Datsspeed zum Thema Exchange Server ...

Verschlüsselung & Zertifikate
Mit Veracrypt eine zweite interne (non-system) Festplatte verschlüsseln (10)

Frage von Bernulf zum Thema Verschlüsselung & Zertifikate ...

Internet Domänen
Nameserver ein Geist? (7)

Frage von zelamedia zum Thema Internet Domänen ...

Video & Streaming
Kamera mit 24-7 auf Website hat Aussetzer (6)

Frage von Calvus zum Thema Video & Streaming ...