Mysqli_stmt :: attr_get ist eine Methode in PHP, um den Attributwert einer Vorverarbeitungsanweisung ( mysqli_stmt -Objekt) zu erhalten. Es ist sehr hilfreich, um das Verhalten von SQL -Anweisungen in der Datenbankprogrammierung dynamisch zu debugieren und dynamisch anzupassen. Aufgrund des Unterschieds zwischen der MySQL -Version und der PHP -Erweiterungsversion gibt es jedoch einige Unterschiede in der Leistung dieser Funktion. Bei der Verwendung sollten besondere Aufmerksamkeit auf sie geschenkt werden.
MySQLI_STMT :: attr_get wird verwendet, um den Wert des angegebenen Attributs zu erhalten. Die Syntax ist wie folgt:
$value = $stmt->attr_get($attr);
wobei $ stmt ein vorbereitetes MySQLi_Stmt -Objekt ist, und $ attr ist die Attributkonstante, die Sie abfragen möchten, z. B.:
Mysqli_stmt_attr_update_max_length
Mysqli_stmt_attr_cursor_type
Mysqli_stmt_attr_prefetch_rows
Diese Funktion gibt den aktuellen Wert der Eigenschaft zurück.
MySQL 5.1 und unten <br> Diese Funktion unterstützt begrenzte Attribute, und einige Attributrenditewerte sind instabil und sogar False wird zurückgegeben. Beispielsweise funktioniert MySQLI_STMT_ATTR_PREFETCH_ROWS in niedrigeren Versionen möglicherweise nicht.
MySQL Version 5.5 - 5.7 <br> Die Funktion unterstützt mehr Eigenschaften und gibt genauere Ergebnisse zurück. Bei Verwendung von Cursor-bezogenen Eigenschaften ( mysqli_stmt_attr_cursor_type ) gibt es jedoch weiterhin Kompatibilitätsprobleme, und in einigen Fällen funktioniert der Cursor nicht wie erwartet.
MySQL 8.0 und höher <br> Die Funktionsleistung ist die stabilste, die die meisten Eigenschaften unterstützt und in Kombination mit Verbesserungen der mySQL -nativen Unterstützung ist das Verhalten des Cursortyps und der vorgeholkten Zeilenzählattribute kontrollierbarer und konsistenter.
Stellen Sie sicher, dass die PHP -Version mit dem MySQL -Treiber <br> kompatibel ist Die Unterstützung für Attr_get von MySQLI -Erweiterung in verschiedenen PHP -Versionen wird ebenfalls unterschiedlich sein. Es wird empfohlen, PHP 7.4 und höher zu verwenden, um eine optimale Kompatibilität zu gewährleisten.
Attributwertprüfungen müssen streng sein <br> Da verschiedene Versionen verschiedene Arten von Ergebnissen zurückgeben können, wird empfohlen, die Erkennung von Typ- und Gültigkeitserkennung des Renditewerts vor dem Gebrauch durchzuführen, um Missbrauch zu vermeiden und Programmausnahmen zu verursachen.
Vermeiden Sie es, nicht unterstützte Eigenschaften zu fordern <br> Das Aufrufen eines nicht unterstützten Attributs gibt falsch zurück. Bitte entwerfen Sie die Logik angemessen, basierend auf der Unterstützung von MySQLI_stmt :: attr_set .
Debugging und Protokollierung <br> In komplexen Anwendungen sollten Protokolle aufgezeichnet werden, wenn Attr_get verwendet werden, um Attribute zu erhalten, um die Überprüfung von Verhaltensunterschieden in verschiedenen Umgebungen zu erleichtern.
Hier finden Sie eine einfache Demonstration, wie Sie MySQLI_stmt :: attr_get verwenden und den URL -Domänennamen m66.net ersetzen: