आप एक खाली स्ट्रिंग डिफ़ॉल्ट चाहते हैं तो एक पसंदीदा तरीका के इन (अपनी जरूरत के आधार पर) एक है:
$str_value = strval($_GET['something']);
$trimmed_value = trim($_GET['something']);
$int_value = intval($_GET['somenumber']);
url पैरामीटर something
URL में मौजूद नहीं है तो $_GET['something']
null
strval($_GET['something'])
वापस आ जाएगी ->strval(null)
->""
और अपने चर $value
पर सेट है एक खाली स्ट्रिंग।
trim()
कोड के आधार पर strval()
से अधिक पसंद किया जा सकता है
intval()
अगर अंकीय मान उम्मीद कर रहे हैं (उदाहरण के लिए एक नाम पैरामीटर इसका उपयोग करना चाहते हो सकता है) और डिफ़ॉल्ट शून्य है। intval(null)
->0
मामले पर विचार करने के:
...&something=value1&key2=value2
(ठेठ)
...&key2=value2
(पैरामीटर यूआरएल $ _GET से लापता अशक्त इसके लिए वापस आ जाएगी)
...&something=+++&key2=value
(पैरामीटर " "
है)
यह क्यों एक पसंदीदा है पप्रोच:
- यह एक पंक्ति पर अच्छी तरह से फिट बैठता है और यह स्पष्ट हो रहा है कि क्या हो रहा है।
- यह पठनीय है कॉपी/पेस्ट गलती की
$value = isset($_GET['something']) ? $_GET['something'] : '';
- लोअर जोखिम या लिखने में कोई त्रुटि से:
$value=isset($_GET['something'])?$_GET['somthing']:'';
- यह पुरानी और नई php के साथ संगत है।
अद्यतन सख्त मोड कुछ इस तरह की आवश्यकता हो सकती:
$str_value = strval(@$_GET['something']);
$trimmed_value = trim(@$_GET['something']);
$int_value = intval(@$_GET['somenumber']);
संबंधित http://stackoverflow.com/questions/3737139/reference-what-does-this-symbol- मतलब-में-php – Musa
संभावित डुप्लिकेट [PHP क्या है? : ऑपरेटर बुलाया और यह क्या करता है?] (http://stackoverflow.com/questions/1080247/what-is-the-php-operator-called-and-what-does-it-do) – Niko