In von DB Ich habe eine Tabelle mit einem Feld namens 'fk_ownerID'. Wenn ich eine neue Tabellenzeile hinzufüge, ist die 'fk_ownerID' standardmäßig leer. In Toad for MySQL wird dies als {null} angezeigt. Wenn 'fk_ownerID' einen Wert erhält und ich diesen Wert später entferne, setze ich fk_ownerID = "".Wie überprüft man, ob mysql null/leer zurückgibt
Jetzt habe ich den folgenden Code:
$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"];
}
}
Nun ist die Variable $ ownerID sollte eine Nummer haben, oder nicht. Aber ich bin mir nicht sicher, wie ich das überprüfen soll. Derzeit mache ich das:
if ((strlen($ownerID) == 0) || ($ownerID == '0') || ($ownerID == 'null'))
Aber ich bin ziemlich sicher, nur einer dieser Tests sollte notwendig sein.
Wie überprüft man am besten, ob ein Zeilenfeld leer oder null ist?
Also muss ich leer() und is_null()? – Steven
ok .... empty() sollte tun :) -> Gibt FALSE zurück, wenn var einen nicht-leeren und nicht-Null-Wert hat. die folgenden Dinge werden als leer sein: "" (ein leerer String) 0 (0 als eine ganze Zahl) "0" (0 als String) NULL FALSE Array() (ein leeres Array) var $ var; (Eine Variable deklariert, aber ohne einen Wert in einer Klasse) – Steven
Ich denke, dass 'is_null()' ist sicherer, denn wenn eine Variable einen Wert von Null hat, wird sie immer noch als 'empty()' betrachtet. – Mateng