Hinweis - ich weiß ziemlich viel über empty() und isset(), was ich frage ist die richtige/effizienter Weg, um sie zu verwenden.Ist leer() genug oder verwenden Sie isset()?
Ich habe gerade gesehen, um php.net diesen Satz unter empty()
Referenz:
keine Warnung erzeugt, wenn der Variable nicht existiert. Das bedeutet leer() ist im Wesentlichen das genaue Äquivalent zu ! Isset ($ var) || $ var == falsch.
Aber noch einmal, wie ich vor allem jetzt arbeite auf anderer Leute apps (entweder eigenständige Projekte, Websites cms oder sogar Frameworks) viele, viele Male habe ich gesehen, wie Menschen zu schreiben:
if (isset ($var) && $var != '')
// or
if (isset ($var) && !empty($var))
(vor allem mit $ _GET und $ _POST Variablen, aber nicht nur)
Soweit ich Handbuch verstehen, unter snippet entspricht:
if (!empty($var))
Oder fehlt mir etwas? Was ist technisch der beste Weg, die Existenz von Variablen mit Wert zu überprüfen?
Ich kenne beide Funktionen, ihre Ziele. Ich will nur wissen, ob empty()
alle zu überprüfen benötigt wird, wenn die Variable gesetzt ist und Wert gegeben. Ich weiß, dass es funktioniert, aber ist es 100% richtig und sicher?
Antwort ist 'zu bejahen ist. –
'empty()' ist der bevorzugte Weg –
Ich benutze immer leer, weil ich nicht überprüfen muss, ist es gesetzt oder nicht, aber sei vorsichtig! Zum Beispiel, wenn Sie eine Texteingabe validieren wollen, und ich muss sicher sein, es ist nur gefüllt, spielt keine Rolle, was drin ist, verwenden Sie "isset" und "strlen", weil 0 wird für leer zurückgeben. – vaso123