डीबी द्वारा मेरे पास 'fk_ownerID' नामक फ़ील्ड वाली एक तालिका है। डिफ़ॉल्ट रूप से, जब मैं एक नई टेबल पंक्ति जोड़ता हूं, तो 'fk_ownerID' खाली होता है। MySQL के लिए टॉड में, यह {null} के रूप में दिखाया गया है। यदि 'fk_ownerID' मान दिया जाता है, और बाद में मैं इस मान को हटा देता हूं, तो मैंने fk_ownerID = "" सेट किया है।कैसे जांचें कि mysql शून्य/खाली
$result = $dal->getRowByValue('tableName','id', $_POST['myID']);
// Check to see if any rows where returned
if (mysql_num_rows($result) > 0)
{
while ($row = mysql_fetch_array($result))
{
$ownerID = $row["fk_ownerID"];
}
}
अब चर $ ownerID एक नंबर होना चाहिए, या नहीं:
अब, मैं निम्नलिखित कोड है। लेकिन मुझे यकीन है कि यह कैसे जांचें। वर्तमान में मैं यह कर रहा हूं:
if ((strlen($ownerID) == 0) || ($ownerID == '0') || ($ownerID == 'null'))
लेकिन मुझे पूरा यकीन है कि इनमें से केवल एक परीक्षण आवश्यक होना चाहिए।
यह जांचने का सबसे अच्छा तरीका क्या है कि कोई पंक्ति फ़ील्ड खाली या शून्य है या नहीं?
तो मैं खाली उपयोग करने के लिए() और is_null()? – Steven
ठीक है .... खाली() करना चाहिए :) -> भिन्न होने पर गलत होता है यदि var में एक खाली और गैर-शून्य मान होता है। निम्नलिखित बातें खाली माना जाता है: "" (कोई रिक्त स्ट्रिंग) 0 (0 एक पूर्णांक के रूप में) "0" (0 स्ट्रिंग के रूप) शून्य गलत सरणी() (एक खाली सरणी) var $ var; (एक चर घोषित किया गया है, लेकिन कक्षा में मूल्य के बिना) – Steven
मुझे लगता है कि 'is_null()' सुरक्षित है, क्योंकि यदि किसी चर के शून्य मान हैं तो इसे अभी भी खाली() 'माना जाता है। – Mateng