Maison  >  Article  >  développement back-end  >  Résumé des questions d'entretien simples PHP

Résumé des questions d'entretien simples PHP

小云云
小云云original
2018-03-03 13:05:072844parcourir

Cet article partage principalement avec vous un résumé de questions simples d'entretien PHP, dans l'espoir d'aider tout le monde.

1. La différence entre echo, print et print_r :

  1. echo est une instruction php qui peut générer une ou plusieurs chaînes sans valeur de retour.

  2. print et print_r sont des fonctions avec des valeurs de retour.

  3. print() ne peut imprimer que la valeur des variables de type simple (telles que int, string), print_r() peut imprimer la valeur des variables de type complexe (telles que tableau, object), echo Afficher une ou plusieurs chaînes

2 .Constantes magiques

名称 含义
__LINE__ 文件中的当前行号。
__FILE__ 文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。
__DIR__ 文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。
__FUNCTION__ 函数名称
__CLASS__ 类的名称
__TRAIT__ Trait 的名字,Trait 名包括其被声明的作用区域(例如 FooBar)。
__METHOD__ 类的方法名
__NAMESPACE__ 当前命名空间的名称(区分大小写)。

3 .

1 La différence entre echo, print. et print_r :

  1. echo est une instruction php, qui peut générer une ou plusieurs chaînes et n'a aucune valeur de retour.

  2. print et print_r sont des fonctions avec des valeurs de retour.

  3. print() ne peut imprimer que la valeur des variables de type simple (telles que int, string), print_r() peut imprimer la valeur des variables de type complexe (telles que tableau, object), echo Afficher une ou plusieurs chaînes

2 Constantes magiques

名称 含义
__LINE__ 文件中的当前行号。
__FILE__ 文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。
__DIR__ 文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。
__FUNCTION__ 函数名称
__CLASS__ 类的名称
__TRAIT__ Trait 的名字,Trait 名包括其被声明的作用区域(例如 FooBar)。
__METHOD__ 类的方法名
__NAMESPACE__ 当前命名空间的名称(区分大小写)。

3. La différence entre get et post

1. Get et post sont deux façons de soumettre les données du formulaire à la base de données. Lorsque get soumet les données, les informations pertinentes sur les données seront affichées dans. Dans l’url, les valeurs passées correspondent à chaque champ du formulaire. Post utilise le mécanisme de publication http pour placer chaque champ du formulaire et son contenu dans l'en-tête HTML et le transmettre à l'adresse URL pointée par l'attribut action. Les utilisateurs ne peuvent pas voir ce processus.

2. La quantité de données transférées par get est faible et ne peut pas dépasser 2 Ko. La quantité de données transmises par courrier est relativement importante et est généralement illimitée par défaut.

3. Post est évidemment meilleur en termes de performances de sécurité. Mais get est meilleur en termes d'efficacité d'exécution.

4. La différence entre session et cookie

1. Les données des cookies sont stockées sur le navigateur du client et les données de session sont placées sur le serveur.

2. Les cookies ne sont pas très sûrs. D'autres peuvent analyser les cookies stockés localement et effectuer une analyse des cookies pour obtenir des informations sur l'utilisateur.

3.session sera enregistrée sur le serveur pendant une certaine période de temps. Lorsque l'accès augmente, les performances du serveur augmentent. Si vous envisagez de réduire les performances du serveur, vous devez utiliser des cookies.

4. Les données enregistrées par un seul cookie ne peuvent pas dépasser 4 Ko. De nombreux navigateurs limitent un site à enregistrer jusqu'à 20 cookies.

Pour une explication détaillée du mécanisme de session, je me réfère à un blog écrit par un blogueur http://blog.csdn.net/fangaoxin/article/details/6952954/ qui semble très détaillé et intéressant. Les étudiants peuvent le prendre comme référence.

5. Que sont les transactions dans la base de données ?

Une transaction est une série d'opérations effectuées comme une unité logique. Une unité logique de travail doit avoir quatre propriétés, appelées propriétés ACID (Atomicité, Cohérence, Isolation et Durabilité) uniquement afin de. devenir une transaction :
Atomicité
Une transaction doit être une unité de travail atomique pour ses modifications de données, soit toutes sont exécutées, soit aucune n'est exécutée.
Cohérence
Lorsqu'une transaction est terminée, toutes les données doivent être cohérentes. Dans la base de données concernée, toutes les règles doivent être appliquées aux modifications des transactions afin de maintenir l'intégrité de toutes les données. À la fin de la transaction, toutes les structures de données internes (telles que les index B-tree ou les listes doublement chaînées) doivent être correctes.
Isolement
Les modifications apportées par des transactions simultanées doivent être isolées des modifications apportées par toute autre transaction simultanée. L'état des données lorsqu'une transaction visualise les données est soit l'état avant qu'elles soient modifiées par une autre transaction simultanée, soit l'état après qu'une autre transaction les ait modifiées. La transaction ne verra pas les données dans l'état intermédiaire. C'est ce qu'on appelle la sérialisabilité car elle permet de recharger les données de départ et de rejouer une série de transactions afin que les données se retrouvent dans le même état que l'exécution de la transaction d'origine.
Persistance
Une fois une transaction terminée, son impact sur le système est permanent. Cette modification sera maintenue même en cas de panne du système.

commencer une transaction

rollback transaction rollback

confirmation de la transaction de validation

Remarque : la restauration et la validation ne peuvent pas être utilisées en parallèle lorsqu'elles sont utilisées en même temps. time, only Le précédent prend effet.

MYSQL est automatiquement soumis par défaut. Vous pouvez définir autocommit=0 pour désactiver la soumission automatique. Vous pouvez définir autocommit=1 pour activer la soumission automatique. 6. À propos de la date d'impression PHP

Calcul du décalage horaire
<?php
echo date(&#39;Y-m-d H:i:s&#39;,strtotime(&#39;-1day&#39;));//前一天
echo‘<br>’;
echo date('Y-m-d H:i:s',strtotime('-1week'));//前一周
echo'<br>';
echo date('Y-m-d H:i:s');//现在的时间
echo'<br>'
echo date('Y-m-d H:i:s',strtotime('next Monday'));//下一个星期一
echo'<br>';
echo date('Y-m-d H:i:s',strtotime('last Monday'));//上一个星期一
echo "现在的时间是:".date(h:i:s a);//a-小写的上午和午后(am 或pm)
?>

6. Modèles pouvant séparer HTML et PHP
<?php
$startdate =strtotime("2012-01-01");
$enddate=strtotime("2012-02-04");
$days=round(($enddate-$startdate)/86400)+1;
echo $days;
?>

smarty, phptal, template, PHPlib. Modèle, FastTemplate

Recommandations associées :

Questions d'entretien PHP, questions sur l'algorithme

8 questions d'entretien PHP reflétant votre compréhension de PHP

Un résumé des questions du test écrit dans les questions d'entretien PHP

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn