के लिए उत्तम आचरण मुझे लगता है अपने आप को यह एक बहुत कुछ कर:पीएचपी: साइलेंट विफलता
$something = @$_GET['else'];
if ($something) {
// ...
} else {
// ...
}
की तरह, लगभग जब भी मैं सरणियों के साथ सौदा। मैं जावास्क्रिप्ट और एक झूठी मूल्य की जांच करने की क्षमता के लिए उपयोग किया जाता है। लेकिन क्या यह PHP में उपयुक्त है? क्या मैं PHP को मजबूर करने की कोशिश कर रहा हूं, जिसे मैं पहले से समझता हूं, इसे अपनी भाषा के रूप में सीखने के बजाय?
संपादित
मैं udnerstand कि मैं सिर्फ का उपयोग कर सकते isset
(मैं भी * तहत * यह खड़े), लेकिन यह मेरे लिए भद्दा लगता है, और यह है जहाँ मैं प्रतिध्वनित करने के लिए कोशिश कर रहा हूँ करने के लिए भी clunkier स्थितियों की ओर जाता है मूल्य:
// what I want to do
echo '<input type="text" name="whatever" value="', @$values['whatever'], '" />';
// what I fear I must do
echo '<input type="text" name="whatever" value="';
if (isset($values['whatever'])) {
echo $values['whatever'];
}
echo '" />';
स्वच्छता मुद्दे को अलग करना, मैं पहला संस्करण पसंद करता हूं। लेकिन मुझे एक झुकाव संदेह है कि यह एक बड़ा नंबर नहीं है। (मैं भी एक चुपके संदेह मैं कैसे वर्तनी के बारे पता नहीं है कि "संदेह।")
अपने संपादित के बारे में: मुझे लगता है कि आप क्या करना चाहते हैं तो बस ठीक है। एक nonexistent '$ मान ['जो कुछ भी'] शून्य के रूप में बाहर आ जाएगा और एक नल स्ट्रिंग में डाल दिया जाएगा। त्रुटि दमन का दायरा इतना सीमित है कि यह उस त्रुटि को छिपाने वाला नहीं है जिसे आपको देखना है। – awm