MySQL neue Bibliothek und notepad++
Wie ich es verstehe, sind die normalen mysql mysql.*
Methode library abgelöst wurde etwas durch die Bibliothek mysqli.*
. Im wesentlichen, mein Verständnis ist, dass die neue Bibliothek verwendet all die alten Methoden nur mit dem Buchstaben "i" tagged auf das Ende der Methode den Namen. Drei Fragen:
- Warum haben MySQL aktualisiert diese Bibliothek und welche neuen Funktionen beinhaltet es?
- Für Benutzer von Notepad++ die Sprache der Wahl kann ausgewählt werden aus einer drop-down-Menü, dann zeigt der code ähnlich wie bei einer IDE, für Instanz-Methoden sind blau gefärbt und sind in Fettdruck. Wenn ich schrieb zuerst einige MySQL-code, habe ich die alte Bibliothek von Methoden, die nicht bewusst sind, die Weiterentwicklung. Wenn ich umgebaut, um die neue Bibliothek von Methoden, die blau/Fett hervorheben verschwand und kehrte zu normaler Schrift. Wenn ich Sie gelöscht, das "i" in den Namen der Methode, es wurde wieder hervorgehoben. Warum Notepad++ nicht erkennen, die neue Methoden?
- Sind die neuen Methoden, die eine Anforderung (D. H. Werden die alten Methoden immer noch funktionieren in PHP)?
Hilfe dankbar.
- MySQLi unterscheidet sich nicht von MySQL. Hier ist die übliche Botschaft, die wir in der Regel geben Menschen mit
mysql_*
: Bitte verwenden Sie nichtmysql_*
Funktionen im neuen code. Sie werden nicht mehr gepflegt und sind offiziell deprecated. Siehe die red box? Erfahren Sie mehr über prepared statements und PDO oder MySQLi - diesem Artikel wird Ihnen helfen, entscheiden, welche. Wenn Sie PDO, hier ist ein gutes tutorial. - Duplikat von stackoverflow.com/a/14112684/285587
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwendung von Notepad++, highlight mysqli, dann
stellen Sie sicher, es ist ein Leerzeichen nach der falsche (erste Position.)
Unten ist eine Liste (Es ist die, die ich verwende.)
True false
mysqli_affected_rows
mysqli_autocommit
mysqli_change_user
mysqli_character_set_name
mysqli_close
mysqli_commit
mysqli_connect_errno
mysqli_connect_error
mysqli_connect
mysqli_data_seek
mysqli_debug
mysqli_dump_debug_info
mysqli_errno
mysqli_error_list
mysqli_error
mysqli_fetch_all
mysqli_fetch_array
mysqli_fetch_assoc
mysqli_fetch_field_direct
mysqli_fetch_field
mysqli_fetch_fields
mysqli_fetch_lengths
mysqli_fetch_object
mysqli_fetch_row
mysqli_field_count
mysqli_field_seek
mysqli_field_tell
mysqli_free_result
mysqli_get_charset
mysqli_get_client_info
mysqli_get_client_stats
mysqli_get_client_version
mysqli_get_connection_stats
mysqli_get_host_info
mysqli_get_proto_info
mysqli_get_server_info
mysqli_get_server_version
mysqli_info
mysqli_init
mysqli_insert_id
mysql_kill
mysqli_more_results
mysqli_multi_query
mysqli_next_result
mysqli_num_fields
mysqli_num_rows
mysqli_options
mysqli_ping
mysqli_prepare
mysqli_query
mysqli_real_connect
mysqli_real_escape_string
mysqli_real_query
mysqli_reap_async_query
mysqli_refresh
mysqli_rollback
mysqli_select_db
mysqli_set_charset
mysqli_set_local_infile_default
mysqli_set_local_infile_handler
mysqli_sqlstate
mysqli_ssl_set
mysqli_stat
mysqli_stmt_init
mysqli_store_result
mysqli_thread_id
mysqli_thread_safe
mysqli_use_result
mysqli_warning_count
Kann ich nicht beantworten Nummer 1 für Sie, denn ich weiß nicht, die details.
2: ich weiß nicht, warum es nicht standardmäßig enthalten, aber können Sie es manuell hinzufügen.
Gehen Sie zu Einstellungen->style-Konfigurator und wählen Sie php unter Sprache. Wählen Sie WORD unter Stil.
In der box namens "benutzerdefinierte keywords" Add all die mysqli_* - Funktionen, die Sie verwenden. Sie werden hervorgehoben, von nun an.
3: jetzt, Sie werden arbeiten. Es war veraltet in 5,5, was bedeutet, dass es löst eine Warnung aus, wenn Sie es verwenden. Irgendwann wird es komplett entfernt werden. Dennoch, die Umstellung auf mysqli, damit nichts bricht, wenn Sie aktualisieren.
Aus PHP.net's FAQ über Datenbanken
Als um deine Frage zu Notepad++ - Funktionen, die Sie haben zu Fragen, es auf Ihrer offiziellen Foren/community.
Deiner 3. Frage die Antwort ist verborgen in dem Auszug oben:
Mit der alten API sollte nicht verwendet werden,, und eines Tages wird es sein veraltet und schließlich entfernt von PHP. Es ist eine beliebte Erweiterung, so dies wird ein langsamer Prozess, aber Sie sind stark gefördert zu schreiben alle neuen code mit entweder
mysqli
oderPDO_MySQL
.1) Nach php.net's-übersicht
2) ich habe nie benutzt Notepad++, ich benutze Sublime Text 2. Text-Editoren können nicht gerecht, jede Sprache, also vielleicht gibt es ein Notepad++ plugin für mysqli?
3) Die MySql-übersicht sagt:
Ist es wahrscheinlich eine gute Idee, um den Schalter, es würde sicherlich nicht Schaden und es wäre auf jeden Fall schön, bleiben Sie up to date mit der Art, wie PHP interagiert mit MySql.
Edit: Für mich schreiben MySqli glatter ist als MySql, weil ich nicht haben, um eine Verbindung, die am Ende einer Abfrage bei der Verwendung der MySqli-Klasse.
Statt
Nicht unbedingt.
mysqli
Funktionen sind nun in zwei Formen, entweder prozedurale (wie altmysql
) oder Objekt-orientierten Stil. (z.B.$result->fetch_array()
).Vom php.net
Einige der neuen
mysqli
Funktionen akzeptieren auch andere Argumente aus der alten. Die meisten in der Regel die meisten Funktionen erfordern nunmysqli
link (diemysqli
Verbindung) als argument.Als für, warum haben Sie es geändert, ist es offensichtlich müssen ein paar Gründe. Die top-diejenigen, die Sicherheit und Stabilität, und die Einführung der neuen OO-Formatvorlagen muss auch der Grund sein.
Haben Sie einen Blick auf diese für die Vorteile: MySQLi-Erweiterung nutzen