mysql_num_rows
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
abfrage
code
einbeziehung
ergebnis
fehlinformation
funktion
grad
http
laut url
manual
menge
setzen
spalten
string
tatsache
total code
typ
unterscheiden
url
verwenden
-
Hey,
so langsam nervt mich die Funktion mysql_num_rows.
Was liefert sie denn jetzt für einen Typ zurück?
Einen Integer oder einen String?
Es kommt mir echt so vor, als ob sich das jedes mal ändert.
In dem einem Script muss ich == '0' setzen und in nem anderen dann == 0.
Oder hängt der Rückgabe-Typ von den Spalten ab?
Auf die Idee bin ich grad während des Schreibens gekommen.
Lg -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
hallo seth93,
laut http://php.net/manual/de/function.mysql-num-rows.php gibt die Funktion einen 'int'-Wert, also eine Zahl, zurück.
gruß, djfun -
PHP wird == 0 und == '0' sowieso gleichwertig behandeln:
0 == '0' => true
(Um 0 und '0' zu unterscheiden, müsste man === verwenden :) -
Hallo,
allgemein zu PHP: immer schön auf den Datentyp aufpassen! viele Funktionen können beide Werte liefert - ein "false" (zB wenn was schief geht) oder eine "0" (wenn man Zb 0 Datensätze gefunden hat). Deswegen sollte man sich dran gewöhnen, true und false nicht mit "!" oder ähn. zu checken, sondern immer mit "===" bzw. "!==", das nicht nur den Wert, sondern auch Typ in den Vergleich mit einbezieht!
MfG
Nadobnykh -
Übrigens hab ich mal gelesen das man mysql_num_rows nicht verwenden soll, sondern statt desen das:
function get_rows ($table_and_query) { $total = mysql_query("SELECT COUNT(*) FROM $table_and_query"); $total = mysql_fetch_array($total); return $total[0]; }
Weiß aber nicht mehr genau wieso -
Ich weiß nicht, wo du das gelesen hast, aber das ist eine Fehlinformation ;)
PDO beispielsweise nutzt diese Funktion nach wie vor, obwohl es sich hierbei um "neue Rechtschreibung" handelt. Hier nennt sich das Ganze fetchColumn, beinhaltet aber die selbe Funktionsweise, jedoch auf mehrere verschiedene Datenbanktypen ausgelegt.
Ich halte deine "Alternative" für äußerst ineffizient und unter Einbeziehung der Tatsache, dass mysql_num_rows eben doch verwendet werden sollte, auch total unnötig. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage