Comment quitter le programme de script à l'aide des fonctions PHP

青灯夜游
Libérer: 2023-03-12 07:36:01
original
2907 Les gens l'ont consulté

Dans l'article précédent "Comment effectuer une conversion décimale à l'aide des fonctions PHP", nous avons appris à utiliser PHP pour convertir des nombres binaires et des nombres décimaux entre eux, convertir des nombres décimaux en nombres hexadécimaux et les amis intéressés peuvent apprendre. à propos de la conversion entre nombres octaux et nombres octaux~

L'objectif de cet article est "terminer l'exécution du script et quitter le programme en cours" ; nous devons l'indiquer au moteur PHP via une instruction, et d'autres instructions après cette instruction le font pas besoin d'être exécuté.

Alors, comment pouvons-nous mettre fin à l'exécution du script ? En fait, PHP fournit deux fonctions intégrées "die()" et "exit()" pour terminer cette opération ! die()”和“exit()就能完成这个操作!

我们来看看下面两个例子

<?php
$a = 1;
$b = 9;
echo $a; // 输出 1
die(); // 终止脚本运行,下面不在运行
$sum = $a + $b;
echo $sum; // 不被输出
?>
Copier après la connexion

输出结果:

Comment quitter le programme de script à laide des fonctions PHP

<?php
$a = 1;
$b = 9;
echo $a; // 输出 1
exit(); // 终止脚本运行,下面不在运行
$sum = $a + $b;
echo $sum; // 不被输出
?>
Copier après la connexion

输出结果:

Comment quitter le programme de script à laide des fonctions PHP

可以看出,两个程序都在第 5 行退出(终止执行)了,并没有执行第 6 行和第 7 行的代码。

其实 exit 和 die 这两个名字指向的是同一个函数,die() 是 exit() 函数的别名,两个函数本质上是一样的。且die()和exit() 函数还接受一个可选参数 $message ,用于在退出当前脚本时输出一个消息。

exit($message);
die($message);
Copier après la connexion

$message可以是一个具体的数值(int 类型),也可以是一个字符串(String类型),还可以不输入任何参数。

  • 如果为 int 类型,那么该值会作为退出状态码,并且不会被打印输出。(退出状态码的取值范围在 0 至 254 之间。)

<?php
$a = 1;
$b = 9;
echo $a; // 输出 1
exit(0); // 终止脚本运行,下面不在运行
$sum = $a + $b;
echo $sum; // 不被输出
?>
Copier après la connexion

注意:不要使用被 PHP 保留的退出状态码 255。 状态码 0 用于成功中止程序。

  • 如果为String类型,则函数会打印该字符串并退出当前脚本;

<?php
header("content-type:text/html;charset=utf-8");
$a = 1;
$b = 9;
echo $a; // 输出 1
exit("<br>退出脚本"); // 终止脚本运行,下面不在运行
$sum = $a + $b;
echo $sum; // 不被输出
?>
Copier après la connexion

Comment quitter le programme de script à laide des fonctions PHP

利用这个特性,当程序出错时,我们可以给它传递一个字符串,它会原样输出在系统终端上

$fp=fopen("./readme.txt","r") or die("不能打开该文件");
//这种情况下,如果fopen函数被调用返回布尔值false时,die()将立即终止脚本,并马上打印
//传递给它的字符串,“死前还能说一两句话”。
Copier après la connexion

说明:虽然die()和exit()两者相同,但通常使用中也有细微的选择性。例如:

当传递给exit和die函数的值为0时,意味着提前终止脚本的执行,通常用exit()这个名字。

当程序出错时,可以给它传递一个字符串,它会原样输出在系统终端上,通常使用die()这个名字。

die()和exit() 函数可以用于循环语句,能起到跳出循环的作用

<?php
    for ($i=0; $i < 10; $i++) {
        if ($i == 2) {
            die;
        } else {
            echo &#39;$i = &#39;.$i.&#39;<br>&#39;;
        }
    }
    echo &#39;循环外的一个输出<br>&#39;;
?>
Copier après la connexion

输出结果:

Comment quitter le programme de script à laide des fonctions PHP

终止程序的运行除了可以使用die()和exit()函数外,还可以利用return语句来实现。

首先我们要知道:return是语言结构而不是函数

return:表示执行到该处退出;如果是在函数中,表示退出函数,如果是在脚本中,表示脚本停止执行。

  • 如果在全局范围中调用,则当前脚本文件中止运行。如果当前脚本文件是被 include 的或者 require 的,则控制交回调用文件。此外,如果当前脚本是被 include 的,则 return 的值会被当作 include 调用的返回值,相应的在主脚本文件中定义一个变量进行返回值的接收。

<?php
//包含demo13_ stop. php
$test = include &#39; demo13_ stop.php&#39; ;
var_ dump($test) ;
?>
Copier après la connexion

demo13_stop.php

<?php
   //终止脚本执行
   echo &#39;start&#39;;

   //return
   return &#39;*&#39;;
?>
Copier après la connexion
  • 如果在主脚本文件中调用 return,则脚本中止运行。

总结:

PHP提供的终止脚本执行的方式有三种:return,die(),exit()

return一般用于结束当前的函数/文件/脚本/其他的执行,并将信息返回给调用他的其他 函数/文件/脚本/其他 。

die()和exit()是使当前执行停止到这里,并且不再进行下去。如果有参数,会直接打印出来(只针对字符串)。

那么如果刚好需要输出的是一个数值变量,则可使用"{}"Jetons un coup d'œil aux deux exemples suivants

<?php
$a = 1;
$b = 9;
exit("{$a}"); // 终止脚本运行,下面不在运行
$sum = $a + $b;
echo $sum; // 不被输出
?>
Copier après la connexion

Résultats de sortie :

Comment quitter le programme de script à laide des fonctions PHP

1
Copier après la connexion
Résultat de sortie : Comment quitter le programme de script à laide des fonctions PHP🎜🎜On peut voir que les deux programmes se sont terminés (terminé l'exécution) à la ligne 5 et n'ont pas exécuté le code aux lignes 6 et 7. 🎜🎜En fait, les deux noms exit et die pointent vers la même fonction. die() est un alias de la fonction exit(). Les deux fonctions sont essentiellement les mêmes. Et les fonctions die() et exit() acceptent également un paramètre facultatif $message, qui est utilisé pour afficher un message lors de la sortie du script en cours. 🎜rrreee🎜$message peut être une valeur spécifique (type int) ou une chaîne (type String), ou vous ne pouvez saisir aucun paramètre. 🎜
  • 🎜S'il est de type int, alors la valeur sera utilisée comme code d'état de sortie et ne sera pas imprimée. (Les codes d'état de sortie vont de 0 à 254.) 🎜
rrreee
🎜Remarque : N'utilisez pas le code d'état de sortie 255, qui est réservé par PHP. Le code d'état 0 est utilisé pour terminer le programme avec succès. 🎜
  • 🎜S'il est de type String, la fonction imprimera la chaîne et quittera le script actuel 🎜
  • ul> rrreee🎜Comment quitter le programme de script à laide des fonctions PHP🎜 🎜Utiliser Avec cette fonctionnalité, lorsqu'une erreur de programme se produit, nous pouvons lui transmettre une chaîne, et elle sera affichée telle quelle sur le terminal système🎜rrreee
    🎜Remarque : bien que die() et exit() soient identiques, ils sont également couramment utilisés Sélectivité subtile. Par exemple : 🎜🎜Lorsque la valeur transmise aux fonctions exit et die est 0, cela signifie terminer l'exécution du script plus tôt, généralement en utilisant le nom exit(). 🎜🎜En cas d'erreur du programme, vous pouvez lui transmettre une chaîne, qui sera affichée telle quelle sur le terminal système, généralement en utilisant le nom die(). 🎜
    🎜Les fonctions die() et exit() peuvent être utilisées dans les instructions de boucle pour sortir des boucles🎜rrreee🎜Résultats de sortie :🎜🎜Comment quitter le programme de script à laide des fonctions PHP🎜🎜En plus d'utiliser les fonctions die() et exit() pour terminer le programme, vous pouvez Cela peut également être réalisé en utilisant l'instruction 🎜return. 🎜🎜Tout d'abord, nous devons savoir : return est une structure de langage plutôt qu'une fonction. 🎜🎜return : signifie quitter à ce stade ; si c'est dans une fonction, cela signifie quitter la fonction ; si c'est dans un script, cela signifie que le script cesse de s'exécuter. 🎜
    • 🎜S'il est appelé dans la portée globale, le fichier de script actuel abandonne son exécution. Si le fichier de script actuel est inclus ou requis, le contrôle est rendu au fichier appelant. De plus, si le script actuel est inclus, la valeur de retour sera considérée comme la valeur de retour de l'appel d'inclusion et, par conséquent, une variable est définie dans le fichier de script principal pour recevoir la valeur de retour. 🎜
    rrreee🎜 demo13_stop.php🎜🎜rrreee
    • 🎜Si return est appelé dans le fichier de script principal, le script cesse de s'exécuter . 🎜
    🎜🎜Résumé :🎜🎜🎜PHP propose trois façons de terminer l'exécution du script : return, die(), exit()🎜🎜return est généralement utilisé pour terminer la fonction en cours / Fichier/Script/Autre est exécuté et renvoie des informations aux autres fonctions qui l'appellent/Fichier/Script/Autre. 🎜🎜die() et exit() arrêtent l'exécution en cours ici et ne continuent plus. S'il y a des paramètres, ils seront imprimés directement (uniquement pour les chaînes). 🎜🎜Ensuite, si ce que vous devez générer est une variable numérique, vous pouvez utiliser "{}" pour envelopper la variable numérique : 🎜rrreee🎜Le résultat de la sortie est : 🎜🎜rrreee🎜D'accord, c'est tout . , si vous voulez savoir autre chose, vous pouvez cliquer ici. → →🎜Tutoriel vidéo 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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal