Aktueller Standort: Startseite> Neueste Artikel> Wie analysiere ich die Einschränkungsinformationen von Datenbankfeldern aus dem Rückgabewert von MySQLI_Result :: Fetch_field?

Wie analysiere ich die Einschränkungsinformationen von Datenbankfeldern aus dem Rückgabewert von MySQLI_Result :: Fetch_field?

gitbox 2025-09-12
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Der Beginn des Artikels hat nichts mit dem Haupttext zu tun PHP Codebeispiel</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"这是开头von无关Codebeispiel。"</span></span><span>;
</span><span><span class="hljs-variable">$testArray</span></span><span> = [</span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-number">3</span></span><span>];
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$testArray</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$value</span></span><span>) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$value</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>

<hr>

</span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// Starten Sie den Text</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<h1>Wie zu mysqli_result::fetch_field Der Rückgabewert analysiert die Einschränkungsinformationen des Datenbankfelds?</h1>"</span></span><span>;

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"<p>Im Einsatz PHP von <code>mysqli
'; Echo "

Hier gibt Fetch_field ein STD -Class -Objekt zurück, das verschiedene Informationen über das Feld enthält:

"
; Echo "
  • Name : Feldname
  • Orgname : Originalfeldname
  • Tabelle : Tabelle, zu der das Feld gehört,
  • orgabisch : Original Tabelle Name
  • max_length : Feld Maximale Längenflags
  • : Feldflag (verwendet, um die Einschränkungen von Informationen zu beurteilen)
  • Typ : Feldtyp (wie MySQLi_Type_var_string )
"
;
Echo "

2. Analysieren Sie die Einschränkungsinformationen

"
; Echo "

Das kritischste Attribut sind Flags , eine ganze Zahl, die eine Reihe von Binärflaggen des Feldes darstellt. Die Feldbeschränkungen können durch Bit -Operationen beurteilt werden:

"
; echo "
  • not_null_flag : ob das Feld nicht zulässig ist null
  • pri_key_flag : Ob das Feld der primäre Schlüssel ist
  • auto_increment_flag : ob das Feld selbstverrückt ist
  • einzigartig_key_flag : ob das Feld eindeutig ist
"
;
Echo "

Zum Beispiel, um festzustellen, ob ein Feld NULL nicht zulässt:

"
; echo '
$ field = $ result-> fetch_field ();
if ($ field-> flags & mysqli_not_null_flag) {
    echo "field"
", $ field -> name" 'null ist nicht erlaubt "; } else {echo "field ' ", $ field -> name, " ' null ist erlaubt"; } ' ; Echo "

In ähnlicher Weise kann es beurteilt werden, ob es sich um einen Hauptschlüssel oder eine Selbstbildung handelt:

"
; echo '
if ($ field-> flags & mysqli_pri_key_flag) {
    Echo "Feld ist der Hauptschlüssel";
}
if ($ field-> flags & mysqli_auto_increment_flag) {
    Echo "Field ist selbsterhöhend";
}
'
;
Echo "

3. Zusammenfassung

"
; Echo "

Durch das von MySQLI_Result :: Fetch_field zurückgegebene Objekt können wir leicht grundlegende Informationen wie Feldname, Typ und Länge erhalten. Durch den Bitoperation der Flags -Attribut können wir auch die Feldbeschränkungsinformationen analysieren, wie z

. ?> <?php // Beispiel für PHP -Code, der sich nicht mit dem Ende des Artikels bezieht $ footermessage = "Dies ist am Ende ein irrelevantes Codebeispiel." ; für ( $ i = 0 ; $ i < 3 ; $ i ++) { echo $ footmessage . "Werfen" . ( $ I + 1 ). "Show Time." ; } ?>