[Hämatemesis-Zusammenstellung] Über 40 PHP-Interviewfragen mit Antworten (praktische Erfahrung)

青灯夜游
Freigeben: 2023-04-11 06:46:02
nach vorne
9830 Leute haben es durchsucht

Dieser Artikel fasst über 40 Fragen und Antworten zu PHP-Interviews für Sie zusammen. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

[Hämatemesis-Zusammenstellung] Über 40 PHP-Interviewfragen mit Antworten (praktische Erfahrung)

1. Was ist objektorientiert? Was sind die Hauptmerkmale?

Objektorientiert ist eine Entwurfsmethode für Programme, die dazu beiträgt, die Wiederverwendbarkeit von Programmen zu verbessern und die Programmstruktur klarer zu machen. Hauptmerkmale: Kapselung, Vererbung, Polymorphismus.

2. Was ist der Unterschied zwischen SESSION und COOKIE? Seiten können nicht als derselbe Benutzer betrachtet werden. B. SESSION wird auf der Serverseite gespeichert und COOKIE wird auf der Clientseite gespeichert. Sitzungen sind relativ sicher. Cookies können auf bestimmte Weise geändert werden und sind nicht sicher. Die Sitzung ist für die Bereitstellung auf Cookies angewiesen.

Nach der Deaktivierung von Cookies kann die Sitzung nicht normal genutzt werden. Nachteile der Sitzung: Sie wird auf der Serverseite gespeichert und jeder Lesevorgang wird vom Server gelesen, was Ressourcen auf dem Server verbraucht. Die Sitzung wird in einer Datei oder Datenbank auf der Serverseite gespeichert. Der Dateipfad wird standardmäßig durch session.save_path in der PHP-Konfigurationsdatei angegeben. Sitzungsdateien sind öffentlich.

3. Was bedeuten die Codes 302, 403 und 500 im HTTP-Status?

Eins, zwei, drei, vier und fünf Prinzipien: (d. h. eins: Nachrichtenserie; zwei: Erfolgsserie; drei: Umleitungsserie; vier: Anforderungsfehlerserie; fünf: serverseitige Fehlerserie.)

302: Temporär Die Übertragung war erfolgreich, der angeforderte Inhalt wurde an den neuen Speicherort verschoben

  • 403: Verboten

  • 500: Interner Serverfehler

  • 401: Stellt einen unbefugten Zugriff dar.

  • 4. Bitte notieren Sie die Bedeutung des Datentyps (int char varchar datetime text); was ist der Unterschied zwischen varchar und char?

Int Integer char Zeichen mit fester Länge Varchar Zeichen mit variabler Länge Datetime Datetime-Typ Text Texttyp Der Unterschied zwischen Varchar und char char ist ein Zeichentyp mit fester Länge, der genauso viel Platz einnimmt. Varchar ist ein Zeichentyp mit variabler Länge. Er nimmt genauso viel Platz ein wie der Inhalt, wodurch effektiv Platz gespart werden kann. Da der Typ varchar variabel ist, muss der Server zusätzliche Vorgänge ausführen, wenn sich die Datenlänge ändert, sodass die Effizienz geringer ist als beim Typ char.

5. Was sind die grundlegenden Unterschiede zwischen MyISAM und InnoDB? Wie wird die Indexstruktur implementiert?

A. Der MyISAM-Typ unterstützt keine Transaktionen und Tabellensperren. Er muss häufig optimiert werden und ist für Anwendungen mit häufigen Abfragen geeignet Der InnoDB-Typ unterstützt Transaktionen und Zeilensperren und verfügt über die Fähigkeit zur Wiederherstellung nach Abstürzen. Die Lese- und Schreibgeschwindigkeit ist langsamer als bei MyISAM. Er eignet sich für Anwendungen mit vielen Einfüge- und Aktualisierungsvorgängen, nimmt viel Platz ein und unterstützt keine Volltextindizierung usw . Erstellen Sie einen Index: Alarmtabelle Tabellenname Indexname hinzufügen (`Feldname`)

6 Der Unterschied zwischen isset() und empty()


sset bestimmt, ob eine Variable vorhanden ist Wenn eine Variable nicht vorhanden ist, wird „false“ zurückgegeben. Wenn sie leer ist, wird bestimmt, ob die Variable leer ist. Es kann nur „false“ übergeben werden, und wenn sie leer ist, wird „true“ zurückgegeben. https://jq.qq.com/?_wv=1027&k=55dPDrC

7 Bitte erläutern Sie den Unterschied zwischen der Übergabe von Werten und der Übergabe von Referenzen in PHP. Wann soll ein Wert und wann eine Referenz übergeben werden?

Übergabe als Wert: Alle Änderungen am Wert innerhalb des Funktionsumfangs werden außerhalb der Funktion ignoriert.

    Übergabe als Referenz: Alle Änderungen am Wert innerhalb des Funktionsumfangs spiegeln diese Änderungen auch außerhalb der Funktion wider
  • Vor- und Nachteile: Bei der Wertübergabe muss PHP den Wert kopieren. Insbesondere bei großen Strings und Objekten kann dies ein kostspieliger Vorgang sein. Bei der Referenzübergabe ist kein Kopieren des Werts erforderlich, was sich positiv auf die Leistung auswirkt.
  • 8. Welche Funktion hat error_reporting in PHP?

Stellen Sie die PHP-Fehlerberichtsstufe ein und geben Sie die aktuelle Stufe zurück. 9. Erzählen Sie mir etwas über Ihr Verständnis der Caching-Technologie?

Caching-Technologie besteht darin, dynamische Inhalte in Dateien zwischenzuspeichern und innerhalb eines bestimmten Zeitraums auf dynamische Seiten zuzugreifen, um die zwischengespeicherten Dateien direkt aufzurufen, ohne die Datenbank erneut aufrufen zu müssen. 10. Die dreischichtige MVC-Struktur wird heutzutage häufig in der Programmierung verwendet. Auf welche drei Schichten bezieht sich MVC?

Die drei Schichten von MVC beziehen sich jeweils auf: Geschäftsmodell, Ansicht, Controller. Die Controller-Schicht ruft das Modell auf, um die Daten zu verarbeiten, und ordnet die Daten dann der Ansichtsschicht zur Anzeige zu Wiederverwendbarkeit und Vermeidung von Coderedundanz; ②Der Implementierungscode von M und V ist getrennt, sodass dasselbe Programm unterschiedliche Ausdrucksformen verwenden kann11 Was sind die Vorteile von AJAX?

ajax ist eine asynchrone Übertragungstechnologie, die über Javascript oder das JQuery-Framework implementiert werden kann, um eine teilweise Aktualisierung zu erreichen, wodurch der Druck auf den Server verringert und die Benutzererfahrung verbessert wird.

12. Wie kann bei der Entwicklung des Programms die Betriebseffizienz des Programms verbessert werden?

A. Versuchen Sie, in Abfrageanweisungen kein „select“ zu verwenden; verwenden Sie weniger Unterabfragen;

B ;

C. Cache für häufig im Programm verwendete Daten generieren.

13. Welche Methode verwenden Sie, um das Verkehrsproblem zu lösen?

A. Verwenden Sie den Lastausgleich Dateien werden mit cdn gespeichert und beschleunigt

E. Überprüfen Sie, wo die Engpässe bei Statistiken liegen

14 ? Um zu vermeiden, dass dieselbe Datei mehrmals eingefügt wird, welche Anweisungen können verwendet werden, um sie zu ersetzen?

require läuft Frontloading

include wird zur Laufzeit geladen statt:

require_once

  • include_once

  • 15, foo() und @fo Was ist das Unterschied zwischen o() ?
  • @ stellt alle Warnungen und Ignorierungen dar

    16. Beschreiben Sie kurz den Garbage-Collection-Mechanismus von PHP.
  • Antwort: Variablen in PHP werden im Variablencontainer zval gespeichert. Zusätzlich zum Speichern von Variablentypen und -werten verfügt zval auch über die Felder is_ref und refcount. refcount gibt die Anzahl der Elemente an, die auf die Variable verweisen, und is_ref gibt an, ob die Variable einen Alias ​​hat. Wenn refcount 0 ist, wird der Variablencontainer recycelt. Wenn der Refcount eines zval größer als 0 ist, nachdem er um 1 reduziert wurde, wird er in den Garbage-Puffer eingetragen. Wenn der Puffer den Maximalwert erreicht, durchläuft der Recycling-Algorithmus den ZVAL, um festzustellen, ob es sich um Müll handelt, und gibt ihn frei.
  • 17. Wie maximiert man die Sicherheit von PHP? Wie vermeidet man SQL-Injection-Schwachstellen und XSS-Cross-Site-Scripting-Schwachstellen?

Antwort: Grundprinzipien: Zeigen Sie keine Server- oder Programmdesigndetails nach außen (Fehler blockieren), vertrauen Sie keinen vom Benutzer übermittelten Daten (Filtern Sie Benutzereingaben).

18, der Unterschied zwischen echo, print_r, print, var_dump

echo: Anweisungsstruktur;

print: ist eine Funktion mit einem Rückgabewertprint_r: kann Arrays drucken und Objekte

var_dump: kann Objektarrays mit Datentypen drucken

    19. Funktionen zum Schreiben intelligenter Vorlagen
  • schnell, kompiliert, Caching-Technologie, Plug-in-Mechanismus, leistungsstarke Leistungslogik
  • 20. So implementieren Sie einen Seitensprung in PHP
  • Methode 1: PHP-Funktionssprung: Das Programm kann nach dem Sprung nicht weiter ausgeführt werden, und Exit kann verwendet werden, um die Ausführung zu unterbrechen anschließendes Programm.
  • header("Location:网址");//直接跳转
    header("refresh:3;url=http://www.jsdaima.com");//三秒后跳转
    Nach dem Login kopieren

    Methode 2: Verwendung von Meta

    echo"";
    Nach dem Login kopieren

21. Wie konvertiert man eine Zeichenfolge im GB2312-Format in das UTF-8-Format?

iconv('GB2312','UTF-8','js代码(http://www.jsdaima.com)是IT资源下载与IT技能学习平台。');
Nach dem Login kopieren

22 Wenn Sie den vom Benutzer eingegebenen Inhalt so ausgeben müssen, wie er ist, welche Funktion sollte verwendet werden, um die Daten zu verarbeiten, bevor sie in die Datenbank eingegeben werden?

htmlspecialchars oder htmlentities

23 Was ist ein CSRF-Angriff? XSS-Angriff? Wie kann man es verhindern?

CSRF, Cross-Site-Request-Forgery, bei dem der Angreifer vorgibt, ein Benutzer zu sein und Anfragen sendet, um Informationen zu stehlen oder das System zu beschädigen. Lassen Sie uns über das Grundprinzip sprechen: Der Benutzer besucht Website A, um sich anzumelden, generiert ein Cookie und besucht dann Website B. Wenn Website A eine CSRF-Sicherheitslücke aufweist, wird die Anfrage von Website B zu diesem Zeitpunkt an Website A gesendet (was äquivalent ist). Bei einem Benutzerbesuch geht Website A davon aus, dass es sich um eine vom Benutzer gesendete Anfrage handelt, sodass Website B Ihre Identität erfolgreich verschleiert. Dies wird als Cross-Site-Scripting-Angriff bezeichnet. CSRF-Prävention:

A. Standardisieren Sie die API-Anfragemethode GET, POSTB. Fügen Sie der POST-Anfrage eine Token-Überprüfung hinzu, generieren Sie einen Zufallscode und speichern Sie ihn in der Sitzung. Bringen Sie diesen Zufallscode in das Formular. und senden Zu diesem Zeitpunkt überprüft der Server, ob die Zufallscodes gleich sind. XSS, Cross-Site-Scripting-Angriff.

Prävention: Vertrauen Sie keiner Eingabe, filtern Sie die Eingabe.

24. Sicherheit ist für ein Programm von entscheidender Bedeutung. Bitte sagen Sie mir, auf welche Sicherheitsmechanismen bei der Entwicklung geachtet werden sollte.

A. Verhindern Sie die Remote-Übermittlung.

B. Verhindern Sie die SQL-Injection und filtern Sie spezielle Codes.

C. Verhindern Sie die Überflutung der Registrierungsmaschine.

25. Verstehen Sie das JSON-Datenformat?

JSON (Javascript Object Notation) ist ein leichtes Datenaustauschformat. Das JSON-Datenformat ist fest und kann für die Datenübertragung in mehreren Sprachen verwendet werden.

26. Was ist eine Transaktion? und seine Eigenschaften?

Antwort: Transaktion: Es handelt sich um eine Reihe von Datenbankoperationen und die grundlegende logische Einheit von Datenbankanwendungen.

Transaktionsmerkmale:

A. Atomarität: Das heißt, es werden entweder alle Transaktionen ausgeführt oder keine.
B. Konsistenz oder Streichfähigkeit. Die Ausführung einer Transaktion wandelt die Datenbank von einem korrekten Zustand in einen anderen korrekten Zustand um
C. Isolation. Bevor die Transaktion korrekt festgeschrieben wird, dürfen Änderungen an den Daten durch die Transaktion keiner anderen Transaktion zur Verfügung gestellt werden,
D. Haltbarkeit. Nachdem eine Transaktion korrekt übermittelt wurde, werden ihre Ergebnisse dauerhaft in der Datenbank gespeichert. Auch wenn nach der Übermittlung der Transaktion weitere Fehler auftreten, werden die Verarbeitungsergebnisse der Transaktion gespeichert.

Oder verstehen Sie es so:

Eine Transaktion ist eine Gruppe von SQL-Anweisungen, die als logische Arbeitseinheit miteinander verbunden sind. Wenn eine Anweisungsoperation fehlschlägt, schlägt die gesamte Operation fehl und zukünftige Operationen werden auf diese zurückgesetzt Zustand vor der Operation, oder Es gibt einen Knoten darauf. Um sicherzustellen, dass etwas entweder ausgeführt oder nicht ausgeführt wird, können Transaktionen verwendet werden. Damit eine gruppierte Anweisung als Transaktion betrachtet werden kann, muss sie die ACID-Tests bestehen, nämlich Atomizität, Konsistenz, Isolation und Haltbarkeit.

27. Was ist ein Schloss?

Antwort: Die Datenbank ist eine gemeinsame Ressource, die von mehreren Benutzern genutzt wird. Wenn mehrere Benutzer gleichzeitig auf Daten zugreifen, greifen mehrere Transaktionen gleichzeitig auf dieselben Daten in der Datenbank zu. Wenn gleichzeitige Vorgänge nicht kontrolliert werden, können falsche Daten gelesen und gespeichert werden, wodurch die Konsistenz der Datenbank zerstört wird.

Sperren ist eine sehr wichtige Technologie, um die Parallelitätskontrolle von Datenbanken zu erreichen. Bevor eine Transaktion ein Datenobjekt bearbeitet, sendet sie zunächst eine Anfrage an das System, um es zu sperren. Nach der Sperrung hat die Transaktion eine gewisse Kontrolle über das Datenobjekt. Bevor die Transaktion die Sperre aufhebt, können andere Transaktionen das Datenobjekt nicht aktualisieren.

Grundlegende Sperrtypen: Zu den Sperren gehören Sperren auf Zeilenebene und Sperren auf Tabellenebene

28 Welche Rolle spielen Indizes? Und welche Vor- und Nachteile hat es?

Antwort: Ein Index ist eine spezielle Abfragetabelle, die die Datenbanksuchmaschine verwenden kann, um den Datenabruf zu beschleunigen. Es ist dem Inhaltsverzeichnis eines Buches im wirklichen Leben sehr ähnlich. Sie können die gewünschten Daten finden, ohne das gesamte Buch abzufragen. Indizes können eindeutig sein. Wenn Sie einen Index erstellen, können Sie eine einzelne Spalte oder mehrere Spalten angeben. Der Nachteil besteht darin, dass die Dateneingabe verlangsamt und die Datenbank vergrößert wird.

29. Wie kann man die drei Paradigmen auf populäre Weise verstehen?

Erste Normalform: 1NF ist eine atomare Einschränkung für Attribute, die erfordert, dass Attribute atomar sind und nicht zerlegt werden können;
Zweite Normalform: 2NF ist eine eindeutige Einschränkung für Datensätze, die erfordert, dass Datensätze eindeutige Bezeichner haben , Entitäten Eindeutigkeit;
Dritte Normalform: 3NF ist eine Einschränkung der Feldredundanz, das heißt, jedes Feld kann nicht von anderen Feldern abgeleitet werden.

30. Was ist der Unterschied zwischen Primärschlüssel, Fremdschlüssel und Index?

Definition:
Primärschlüssel – identifiziert einen Datensatz eindeutig, kann nicht dupliziert werden und darf nicht leer sein
Fremdschlüssel – der Fremdschlüssel einer Tabelle ist der Primärschlüssel einer anderen Tabelle, der Fremdschlüssel kann kann wiederholt werden und kann leer sein. Wert
Index – dieses Feld hat keine doppelten Werte, kann aber einen Nullwert haben

Funktion:
Primärschlüssel – wird zur Gewährleistung der Datenintegrität verwendet
Fremdschlüssel – wird zum Herstellen von Verbindungen mit anderen Tabellen verwendet
Index - ja Verbessern Sie die Geschwindigkeit der Abfragesortierung

Nummer:
Primärschlüssel – es kann nur einen Primärschlüssel geben
Fremdschlüssel – eine Tabelle kann mehrere Fremdschlüssel haben
Index – eine Tabelle kann mehrere eindeutige Indizes haben

31, Beschreiben Sie kurz die Zugriffsrechte privater, geschützter und öffentlicher Modifikatoren.

private: private Mitglieder, auf die nur innerhalb der Klasse zugegriffen werden kann.
protected: geschützte Mitglieder, zugänglich innerhalb der Klasse und geerbter Klassen.
öffentlich: öffentliche Mitglieder, vollständig öffentlich, keine Zugangsbeschränkungen.

32. Was ist der Unterschied zwischen Heap und Stack?

A. Der Heap ist ein Speicherbereich, der während der Ausführung des Programms dynamisch zugewiesen wird. Sie können die Größe des Heap-Speichers bestimmen, der entsprechend den Betriebsbedingungen des Programms zugewiesen werden soll.
B. Der Stapel ist ein Speicher Während der Kompilierung wird Speicherplatz zugewiesen, daher muss die Stapelgröße im Code klar definiert sein.

33. Was sind die am häufigsten verwendeten magischen Methoden? Beispiel:

Antwort: PHP legt fest, dass Methoden, die mit zwei Unterstrichen (__) beginnen, als magische Methoden reserviert sind. Daher wird empfohlen, dass Ihr Funktionsname nicht mit __ beginnt, es sei denn, er soll eine vorhandene magische Methode überladen.

__construct() 实例化类时自动调用。
__destruct() 类对象使用结束时自动调用。
__set() 在给未定义的属性赋值的时候调用。
__get() 调用未定义的属性时候调用。
__isset() 使用isset()或empty()函数时候会调用。
__unset() 使用unset()时候会调用。
__sleep() 使用serialize序列化时候调用。
__wakeup() 使用unserialize反序列化的时候调用。
__call() 调用一个不存在的方法的时候调用。
__callStatic()调用一个不存在的静态方法是调用。
__toString() 把对象转换成字符串的时候会调用。比如 echo。
__invoke() 当尝试把对象当方法调用时调用。
__set_state() 当使用var_export()函数时候调用。接受一个数组参数。
__clone() 当使用clone复制一个对象时候调用。

34、$this和self、parent这三个关键词分别代表什么?在哪些场合下使用?

$this 当前对象
self 当前类
parent 当前类的父类

$this在当前类中使用,使用->调用属性和方法
self也在当前类中使用,不过需要使用::调用
parent在类中使用

35、作用域操作符::如何使用?都在哪些场合下使用?

调用类常量
调用静态方法

36、__autoload()方法的工作原理是什么?

答:使用这个魔术函数的基本条件是类文件的文件名要和类的名字保持一致。

当程序执行到实例化某个类的时候,如果在实例化前没有引入这个类文件,那么就自动执行__autoload()函数。

这个函数会根据实例化的类的名称来查找这个类文件的路径,当判断这个类文件路径下确实存在这个类文件后

就执行include或者require来载入该类,然后程序继续执行,如果这个路径下不存在该文件时就提示错误。

使用自动载入的魔术函数可以不必要写很多个include或者require函数。

37、简述高并发网站解决方案。

A、前端优化(CND加速、建立独立图片服务器)
B、服务端优化(页面静态化、并发处理[异步|多线程]、队列处理)
C、数据库优化(数据库缓存[Memcachaed|Redis]、读写分离、分库分表、分区)
D、Web服务器优化(负载均衡、反向代理)

38、PHP遍历文件夹下所有文件

<?php
function read_all($dir){
    if(!is_dir($dir)) return false;
    $handle = opendir($dir);
    if($handle){
        while(($fl = readdir($handle)) !== false){
            $temp = $dir.$fl;
            //$fl !=&#39;.&#39; && $fl != &#39;..&#39; 排除当前目录及父级目录
            if(is_dir($temp) && $fl!=&#39;.&#39; && $fl != &#39;..&#39;){
                echo &#39;目录:&#39;.$temp.&#39;<br>&#39;;
                read_all($temp);
            }else{
                if($fl !=&#39;.&#39; && $fl != &#39;..&#39;){
                    echo &#39;文件:&#39;.$temp.&#39;<br>&#39;;
                }
            }
        }
    }
}
read_all("./dir/");
?>
Nach dem Login kopieren

39、在命令行中运行php程序

php indx.php

A、从命令行运行php非常简单。但有些注意事项需要各位了解下,诸如$_SESSION之类的服务器变量是无法在命令行中使用的,其他代码的运行则和web服务器中完全一样;
B、在命令行中执行php文件的好处之一就是可以通过脚本实现一些计划任务(crontab)的执行,而无须通过web服务器。

延伸1:
php -v 显示当前PHP版本
php -m 显示当前php加载的有效模块
php -i 输出无html格式的phpinfo
php --rf function

延伸2:向php脚本传递参数:
提示:命令行下执行php,是不走Apache/Nginx等这类东西的,没有什么http协议,所以get,post传参数根本不起作用,并且还会报错。有些时候需要在shell命令下把PHP当作脚本执行,比如定时任务。这就涉及到在shell命令下如何给php传参的问题,通常有三种方式传参。

A、使用$argv or $argc参数接收

echo "接收到{$argc}个参数";
 print_r($argv);
Nach dem Login kopieren

B、使用getopt函数

$param_arr = getopt(&#39;a:b:&#39;);
 print_r($param_arr);
Nach dem Login kopieren

C、提示用户输入

fwrite(STDOUT,&#39;Please enter your name:&#39;);
 echo &#39;Your name is:&#39;.fgets(STDIN);
Nach dem Login kopieren

40、你用什么方法检查PHP脚本的执行效率(通常是脚本执行时间)和数据库SQL的效率(通常是数据库Query时间),并定位和分析脚本执行和数据库查询的瓶颈所在?

A、PHP脚本的执行效率

  • a、代码脚本里计时;

  • b、xdebug统计函数执行次数和具体时间进行分析,最好使用工具winCacheGrind分析;

  • c、在线系统用strace跟踪相关进程的具体系统调用。

B、数据库SQL的效率

  • a、sql的explain(mysql),启用slow query log记录慢查询;

  • b、通常还要看数据库设计是否合理,需求是否合理等。

41、对于大流量的网站,您采用什么样的方法来解决各页面访问量统计问题。

A. Überprüfen Sie, ob der Server den aktuellen Datenverkehr unterstützen kann.
C. Verbieten Sie externe Zugriffslinks (Hotlinking), z. B. Bild-Anti-Hotlinking.
E: Verwenden Sie verschiedene Hosts, um den Datenverkehr zu entlasten (Lastausgleich).
F. Verwenden Sie eine Browsing-Statistiksoftware, um die Anzahl der Besuche zu ermitteln und eine gezielte Optimierung durchzuführen.

42. Die MySQL-Datenbank wird als Speicher des Veröffentlichungssystems verwendet. Der Zuwachs von mehr als 50.000 Elementen pro Tag wird auf drei Jahre Betrieb und Wartung geschätzt. A. Eine gut gestaltete Datenbankstruktur, die eine teilweise Datenredundanz ermöglicht und versucht, Verknüpfungsabfragen zu vermeiden.

B. Wählen Sie den geeigneten Tabellenfelddatentyp und die entsprechende Speicher-Engine und fügen Sie entsprechende Indizes hinzu. MySQL-Bibliothek Master-Slave-Lese- und Schreibtrennung

D. Finden Sie reguläre Tabellen, reduzieren Sie die Datenmenge in einer einzelnen Tabelle und verbessern Sie die Abfragegeschwindigkeit
F. Generieren Sie statische Seiten für Seiten, die sich nicht häufig ändern ;
G. Schreiben Sie effizientes SQL. Beispielsweise wird SELECT * FROM TABEL in SELECT field_1, field_2, field_3 FROM TABLE geändert.



43. MySQL-Speicher-Engine, der Unterschied zwischen Myisam und Innodb.

A. Der MyISAM-Typ unterstützt keine erweiterte Verarbeitung wie die Transaktionsverarbeitung, B. Die MyISAM-Typtabelle legt Wert auf Leistung und ihre Ausführungsgeschwindigkeit ist schneller als der InnoDB-Typ . InnoDB unterstützt keinen FULLTEXT-Typindex.

D speichert nicht die spezifische Anzahl von Zeilen in der Tabelle. Das heißt, wenn InnoDB die gesamte Tabelle durchsucht Wie viele Zeilen gibt es, aber MyISAM benötigt nur ein einfaches Auslesen der Anzahl der gespeicherten Zeilen;

E Für Felder vom Typ AUTO_INCREMENT muss InnoDB einen Index nur mit diesem Feld enthalten, in der MyISAM-Tabelle jedoch einen gemeinsamen Index kann mit anderen Feldern erstellt werden;

F, DELETE Bei der FROM-Tabelle erstellt InnoDB die Tabelle nicht neu, sondern löscht sie Zeile für Zeile.

G und LOAD TABLE FROM MASTER funktionieren nicht auf InnoDB besteht darin, zuerst die InnoDB-Tabelle in eine MyISAM-Tabelle zu ändern und dann die Daten zu importieren. Dann wird sie in eine InnoDB-Tabelle geändert. Dies gilt jedoch nicht für Tabellen, die zusätzliche InnoDB-Funktionen verwenden (z. B. Fremdschlüssel).

H, MyISAM unterstützt Tabellensperren und InnoDB unterstützt Zeilensperren.

MyISAM: Ausgereift, stabil, einfach zu verwalten und schnell zu lesen. Einige Funktionen (Transaktionen usw.) unterstützen keine Sperren auf Tabellenebene.

InnoDB: Unterstützt Transaktionen, Fremdschlüssel und andere Funktionen sowie das Sperren von Datenzeilen. Es nimmt viel Platz ein und unterstützt keine Volltextindizierung usw.

Andere, hauptsächlich einige persönliche Meinungen und Metaphysiken nach dem Vorstellungsgespräch:

1. Viele berufstätige Studenten finden es schwierig, für Vorstellungsgespräche Urlaub zu beantragen. Tatsächlich vereinbaren viele Unternehmen mittlerweile Abendinterviews und spezielle Wochenendinterviews. Solange Sie gut kommunizieren, sollte es kein Problem sein, wenn Sie sich die Zeit nehmen, drei Unternehmen an einem Tag zu interviewen. 2. Die empfohlene Reihenfolge für Lieferunternehmen besteht darin, sich zuerst mit einem oder zwei Unternehmen vertraut zu machen, dann die Unternehmen zu vergleichen, von denen Sie überzeugt sind, dann die Unternehmen, an denen Sie sehr interessiert sind, und schließlich das Auswahlgespräch. Der Hauptgrund für die Anordnung dieser Reihenfolge ist, dass Sie, obwohl Sie in Ihrem Geschäft sehr gut sind, einen Prozess benötigen, um sich auf das Vorstellungsgespräch vorzubereiten Vorstellungsgespräche im Vorfeld, wie z. B. das Lesen der Interviewfragen und das Durchsehen von Fachbüchern, sind sehr nützlich. Der Hauptgrund dafür, sich schon im Vorfeld für ein zuverlässiges Unternehmen zu entscheiden, das Ihnen gefällt, ist die Einholung eines Angebots, erstens, um Ihr Selbstwertgefühl zu überprüfen, und zweitens, um sich sicher zu fühlen. 3. Passen Sie Ihre Einstellung an. Tatsächlich basieren einige Angebote auf Glück. Schließlich sind Vorstellungsgespräche bei einigen großen Unternehmen üblich, aber Personalbeschaffung ist nicht üblich. Lassen Sie sich also nicht entmutigen, wenn Sie kein Angebot erhalten.

Empfohlenes Lernen: „

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt von[Hämatemesis-Zusammenstellung] Über 40 PHP-Interviewfragen mit Antworten (praktische Erfahrung). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage