Maison  >  Article  >  développement back-end  >  Le dernier résumé des questions et réponses de l'entretien PHP

Le dernier résumé des questions et réponses de l'entretien PHP

藏色散人
藏色散人avant
2021-04-08 13:44:393094parcourir
Cet article partagera le dernier résumé des questions et réponses des questions d'entretien PHP. Il a une certaine valeur de référence. Les amis qui en ont besoin peuvent s'y référer et espérer aider tout le monde.

Recommandations associées : "

Le dernier résumé des questions de candidature pour les questions d'entretien PHP" "Le dernier résumé des questions conceptuelles pour les questions d'entretien PHP"

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

echo() et print() sont des instructions PHP ; une fonction,

    print() ne peut imprimer que la valeur de variables de type simple (telles que int, string) et a une valeur de retour.
  • print_r() peut imprimer la valeur de variables de type complexe (telles que des tableaux, des objets)
  • echo génère une ou plusieurs chaînes, aucune valeur de retour

2. La différence entre les guillemets simples et les guillemets doubles dans les chaînes

    Les guillemets simples ne peuvent pas interpréter les variables, tandis que les guillemets doubles peuvent interpréter les variables.
  • Les guillemets simples ne peuvent pas échapper aux caractères, mais les caractères peuvent être échappés entre guillemets doubles.

3. La fonction error_reporting

error_reporting() définit le niveau d'erreur de PHP et renvoie le niveau actuel.

4. La différence entre SESSION et COOKIE

  • La session est stockée côté serveur et le cookie est stocké côté client.

  • La session est relativement sûre, mais les cookies peuvent être modifiés par certains moyens, ce qui n'est pas sûr.

  • Le fonctionnement de la session dépend de l'identifiant de session, et l'identifiant de session est stocké dans le cookie. Si les cookies sont désactivés, la session deviendra invalide. (Mais cela peut être réalisé d'autres manières, par exemple en transmettant l'identifiant de session dans l'URL). La

  • la session peut être placée dans un fichier, une base de données ou une mémoire. Par défaut, il est stocké dans un fichier sur le serveur.

5. La différence entre get et post

get est explicite, les données peuvent être vues à partir de l'URL et la quantité de données le transfert est petit, la sécurité est faible ;

la publication est implicite, la quantité de données transmises est importante et la sécurité est élevée.

6. Écrivez le résultat de l'exécution du code suivant
15d3c5705f5b5c61058804ecdf8cdec0PHP0d36329ec37a2cc24d42c7229b69747a 0c6dc11e160d3b678d68754cc175188a Title: a4b561c25d9afb9ac8dc4d70affff419Programming Language0d36329ec37a2cc24d42c7229b69747a";
preg_match_all ("/a4b561c25d9afb9ac8dc4d70affff419(.*)ff5ce9b4edd32c649942decae47f914a/U", $userinfo, $pat_array);
strpos("I love php, I love php too!","php");   // 首次匹配的位置
strrpos("I love php, I love php too!","php");  // 最后匹配的位置

Utiliser redis Quels sont les avantages ? 🎜>

    Vitesse rapide : étant donné que les données sont stockées en mémoire, à l'instar de HashMap, l'avantage de HashMap est que la complexité temporelle de la recherche et de l'opération est O(1).
  • Prend en charge les types de données riches : prend en charge la chaîne, la liste, l'ensemble, l'ensemble trié, le hachage.
  • Transactions prises en charge : plusieurs commandes peuvent être exécutées en même temps. L'échec ne sera pas annulé et l'exécution continuera.
  • Fonctionnalités riches : peut être utilisé pour la mise en cache, la messagerie, le réglage du délai d'expiration par clé, il sera automatiquement supprimé après l'expiration

13. Quels sont les avantages de redis par rapport à memcached ?

    Toutes les valeurs de memcached sont des chaînes simples. En remplacement, redis prend en charge des types de données plus riches.
  • Redis est beaucoup plus rapide que Memcached.
  • redis peut conserver ses données

14 Exécutez le script PHP sur la ligne de commande tout en passant les paramètresEntrez d'abord le répertoire d'installation de php. Le paramètre -f spécifie le fichier php à exécuter. Le paramètre est directement connecté après le nom du fichier. Plusieurs paramètres sont séparés par des espaces. -r signifie exécuter du code php directement.

Si des arguments sont passés, le script vérifie d'abord $argc pour s'assurer que le nombre requis d'arguments est atteint. Ensuite, chaque argument est extrait de $argv et imprimé sur la sortie standard.

$ php -f d:/wamp/test.php [参数1 参数2 ...] $ php -r phpinfo();

15. Syntaxe des tâches planifiées crontab

Le programme exécuté en minutes, heures, jours, mois et semaines

案例: 一个备份程序mybackup,需要在周一到周五下午1点和晚上8点运行,命令如下:

 0 13,20 * * 1,2,3,4,5 mybackup // 或 0 13,20 * * 1-5 mybackup

16. 键入网址再按下回车

  • 浏览器从地址栏的输入中获得服务器的 IP 地址和端口号;

  • 浏览器用 TCP 的三次握手与服务器建立连接;

  • 浏览器向服务器发送拼好的报文;

  • 服务器收到报文后处理请求,同样拼好报文再发给浏览器;

  • 浏览器解析报文,渲染输出页面。

17. php 数组相关的函数

array_combine()-----通过合并两个数组来创建一个新数组
array_chunk()-------将一个数组分割成多个
array_merge()-------把两个或多个数组合并成一个数组
array_slice()-------在数组中根据条件取出一段值
array_diff()--------返回两个数组的差集数组
array_intersect()---计算数组的交集
array_search()------在数组中搜索给定的值
array_splice()------移除数组的一部分且替代它
array_key_exists()--判断某个数组中是否存在指定的key
array_flip()--------交换数组中的键和值
array_reverse()-----将原数组中的元素顺序翻转,创建新的数组并返回
array_unique()------移除数组中重复的值
range()-------------创建并返回一个包含指定范围的元素的数组

18. PHP 数组排序

sort()   - 以升序对数组排序
rsort()  - 以降序对数组排序
asort()  - 根据值,以升序对关联数组进行排序
ksort()  - 根据键,以升序对关联数组进行排序
arsort() - 根据值,以降序对关联数组进行排序
krsort() - 根据键,以降序对关联数组进行排序

19. $_SERVER

// http://www.test.com/testA/test?name=aj&age=23
"HTTP_HOST" => "www.test.com"
"SERVER_NAME" => "www.test.com"
"SERVER_PORT" => "80"               // 服务器端口
"SERVER_ADDR" => "127.0.0.1"        // 服务器IP
"REMOTE_PORT" => "13675"            // 客户端IP
"REMOTE_ADDR" => "127.0.0.1"        // 客户端口
"REQUEST_URI" => "/testA/test?name=aj&age=23"          // 参数
"SCRIPT_NAME" => "/index.php"
"QUERY_STRING" => "s=//testA/test&name=aj&age=23"
"SCRIPT_FILENAME" => "F:/projectName/public/index.php" // 当前执行脚本路径

20. 魔术方法

__construct(),类的构造函数
__destruct(),类的析构函数

__call(),在对象中调用一个不可访问方法时调用
__callStatic(),用静态方式中调用一个不可访问方法时调用

__get(),获得一个不存在的类成员变量时调用
__set(),设置一个不存在的类成员变量时调用

__isset(),当对不可访问属性调用isset()或empty()时调用
__unset(),当对不可访问属性调用unset()时被调用。

__sleep(),执行serialize()时,先会调用这个函数
__wakeup(),执行unserialize()时,先会调用这个函数
__toString(),类被当成字符串时的回应方法

__invoke(),调用函数的方式调用一个对象时的回应方法
__set_state(),调用var_export()导出类时,此静态方法会被调用。

__clone(),当对象复制完成时调用
__autoload(),尝试加载未定义的类
__debugInfo(),打印所需调试信息

21. PHP 的基本变量类型

  • 四种标量类型:boolean (布尔型)、integer (整型)、float (浮点型, 也称作 double)、string (字符串)
  • 两种复合类型:array (数组)、object (对象)
  • 两种特殊类型:resource(资源)、NULL(NULL)


本文章首发在 LearnKu.com 网站上。

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer