2012-06-26 8 views
31

संभव डुप्लिकेट:
Check if a variable is emptyक्या जांच करने के लिए PHP वाक्य रचना "है रिक्त नहीं" है या एक खाली स्ट्रिंग?

सरल पीएचपी प्रश्न:

if (isset($_POST["password"]) && ($_POST["password"]=="$password")) { 
...//IF PASSWORD IS CORRECT STUFF WILL HAPPEN HERE 
} 

इस बयान मैं निम्न पंक्ति का उपयोग ऊपर कहीं:

मैं इस stement है उपयोगकर्ता नाम के रूप में सेट करने के लिए मेरी जावास्क्रिप्ट मेरी जावास्क्रिप्ट में और मेरे PHP में दोनों एक चर:

uservariable = <?php $user = $_POST['user']; print ("\"" . $user . "\"")?>; 

मुझे क्या करना चाहते $ उपयोगकर्ता नल या एक खाली स्ट्रिंग नहीं है बनाने के लिए एक शर्त जोड़ है (यह किसी विशेष मूल्य होने की जरूरत नहीं है , मैं बस यह खाली नहीं होना चाहता। ऐसा करने का सही तरीका क्या है?

मैं जानता हूँ कि यह एक चौखट सवाल है, लेकिन मैं PHP के साथ कोई अनुभव नहीं है। कृपया सलाह दें, धन्यवाद!

+0

प्रश्न पूछ आप में http करने के लिए प्रेरित किया गया है के रूप में पहले खोज समारोह का उपयोग करें:


कि $ उपयोगकर्ता ~ = $ _POST [ 'उपयोगकर्ता'] (धन्यवाद मैट) को साकार करने के बाद /stackoverflow.com/questions/ask-advice। यह कहा और पहले उत्तर दिया गया है: http://stackoverflow.com/search?q=check+for+empty+value+php – Gordon

उत्तर

52

नल या कोई रिक्त स्ट्रिंग वापस आ जाएगी?

if (!empty($user)) {} 

खाली() का उपयोग करें। /:

var uservariable='<?php 
    echo ((array_key_exists('user',$_POST)) || (!empty($_POST['user']))) ? $_POST['user'] : 'Empty Username Input'; 
?>'; 
+0

ऐसा लगता है कि मैं सवाल हर किसी की तुलना में अलग तरह पढ़ें ... हम, सही उपयोगकर्ता $ के बारे में बात कर रहे हैं, नहीं $ _POST [ 'उपयोगकर्ता']? –

+1

'$ उपयोगकर्ता' को अपने कोड में' $ _POST ['उपयोगकर्ता'] 'असाइन किया गया है। असाइनमेंट से पहले मान्य भी हो सकता है लेकिन यह वास्तव में –

+0

हम्म से कोई फर्क नहीं पड़ता, वास्तव में क्या अंतर है? अगर मैं कुछ गलत कर रहा हूँ तो कृपया मुझे बताओ! –

12

उपयोग empty()। यह खाली तार और शून्य दोनों के लिए जाँच करता है।

if (!empty($_POST['user'])) { 
    // do stuff 
} 

मैनुअल से:

निम्नलिखित बातें खाली माना जाता है:

"" (an empty string) 
0 (0 as an integer) 
0.0 (0 as a float) 
"0" (0 as a string)  
NULL 
FALSE 
array() (an empty array) 
var $var; (a variable declared, but without a value in a class) 
+0

closevote करें। – Gordon

+0

ध्यान दें कि यदि 'उपयोगकर्ता' $ _POST पर सेट नहीं है, तो आपको एक चेतावनी मिल जाएगा। यह अभी भी काम करेगा, लेकिन यह आपके लॉग को जल्दी भर देगा। मैं आमतौर पर इसे कम करता हूं: 'if ((array_key_exists ('user', $ _ POST)) || (खाली) ($ _ POST ['user']))' –

+0

इनमें से सभी तीन मुझे त्रुटि संदेश दे रहे हैं: –

0

PHP's strlen() function देखें। यह स्ट्रिंग की लंबाई

if (isset($_POST['user']) && strlen($_POST['user']) > 0) 
संबंधित मुद्दे