الفرق بين المراجعتين لصفحة: «PHP/exit»

من موسوعة حسوب
< PHP
لا ملخص تعديل
إضافات و تعديلات تنسيقية
سطر 2: سطر 2:
(PHP 4, PHP 5, PHP 7)
(PHP 4, PHP 5, PHP 7)


تُخرج البنية exit()‎ رسالةً وتنهي البرنامج الحالي.
تُخرج البنية <code>exit()</code>‎ رسالةً وتنهي البرنامج الحالي.


== الوصف ==
== الوصف ==
سطر 10: سطر 10:
void exit ( int $status )
void exit ( int $status )


</syntaxhighlight>توقف البنية exit()‎ تنفيذ البرنامج. أما دوال إيقاف التشغيل والدالة الهادمة فستُنفَّذ دومًا حتى في حالة استدعاء البنية exit()‎.
</syntaxhighlight>توقف البنية <code>exit()‎</code> تنفيذ البرنامج. أما دوال إيقاف التشغيل والدالة الهادمة فستُنفَّذ دومًا حتى في حالة استدعاء البنية <code>exit()‎</code>.


البنية exit()‎ بنية من بنى اللغة (language construct)، ويمكن استدعاؤها بدون أقواس إذا لم يُمَرر إليها المعامل status.
البنية <code>exit()</code>‎ بنية من بنى اللغة (language construct)، ويمكن استدعاؤها بدون أقواس إذا لم يُمَرر إليها المعامل <code>status</code>.


== المعاملات ==
== المعاملات ==


=== status ===
=== status ===
إذا كانت قيمة المعامل status سلسلةً نصيةً، فستطبع البنية اللغوية exit()‎ المعامل status قبل إنهاء تنفيذ السكربت.
إذا كانت قيمة المعامل <code>status</code> سلسلةً نصيةً، فستطبع البنية اللغوية <code>exit()‎</code> المعامل <code>status</code> قبل إنهاء تنفيذ السكربت.


إذا كان المعامل status عددًا صحيحًا، فستستخدم هذه القيمة كحالة خروج ولن تُطبع. يجب أن تكون حالات الخروج في المدى من 0 إلى 254، وحالة الخروج 255 محجوزة بواسطة PHP ولا يجوز استخدامها، وتستخدم الحالة 0 لإنهاء البرنامج بنجاح.
إذا كان المعامل <code>status</code> عددًا صحيحًا، فستستخدم هذه القيمة كحالة خروج ولن تُطبع. يجب أن تكون حالات الخروج في المدى من 0 إلى 254، وحالة الخروج 255 محجوزة بواسطة PHP ولا يجوز استخدامها، وتستخدم الحالة 0 لإنهاء البرنامج بنجاح.


== القيم المعادة ==
== القيم المعادة ==
لا تعيد البنية exit()‎ قيمًا.
لا تعيد البنية <code>exit()</code>‎ قيمًا.


== أمثلة ==
== أمثلة ==
المثال 1: مثال على البنية exit()‎<syntaxhighlight lang="php">
المثال 1: مثال على البنية <code>exit()</code>‎<syntaxhighlight lang="php">
<?php
<?php


سطر 35: سطر 35:


?>
?>
</syntaxhighlight>المثال 2: مثال على استخدام المعامل status<syntaxhighlight lang="php">
</syntaxhighlight>المثال 2: مثال على استخدام المعامل <code>status</code><syntaxhighlight lang="php">
<?php
<?php


سطر 94: سطر 94:


== ملاحظات ==
== ملاحظات ==
ملاحظة: نظرًا لأن exit()‎ بنية من بنى اللغة وليست دالةً، فلا يمكن استدعائها باستخدام [[PHP/variable functions|الدوال المتغيرة]].
ملاحظة: نظرًا لأن <code>exit()‎</code> بنية من بنى اللغة وليست دالةً، فلا يمكن استدعائها باستخدام [[PHP/variable functions|الدوال المتغيرة]].


ملاحظة: تكافئ البنيةُ exit()‎ البنيةَ die()‎.
ملاحظة: تكافئ البنيةُ <code>exit()</code>‎ البنيةَ <code>die()</code>‎.


== انظر أيضًا ==
== انظر أيضًا ==
* الدالة register_shutdown_function()‎: تسجيل دالة للتنفيذ عند إيقاف التشغيل.
* الدالة <code>[[PHP/register shutdown function|register_shutdown_function()‎]]</code>: تسجيل دالة للتنفيذ عند إيقاف التشغيل.


== مصادر ==
== مصادر ==

مراجعة 23:08، 26 مايو 2018

(PHP 4, PHP 5, PHP 7)

تُخرج البنية exit()‎ رسالةً وتنهي البرنامج الحالي.

الوصف

void exit ([ string $status ] )

void exit ( int $status )

توقف البنية exit()‎ تنفيذ البرنامج. أما دوال إيقاف التشغيل والدالة الهادمة فستُنفَّذ دومًا حتى في حالة استدعاء البنية exit()‎.

البنية exit()‎ بنية من بنى اللغة (language construct)، ويمكن استدعاؤها بدون أقواس إذا لم يُمَرر إليها المعامل status.

المعاملات

status

إذا كانت قيمة المعامل status سلسلةً نصيةً، فستطبع البنية اللغوية exit()‎ المعامل status قبل إنهاء تنفيذ السكربت.

إذا كان المعامل status عددًا صحيحًا، فستستخدم هذه القيمة كحالة خروج ولن تُطبع. يجب أن تكون حالات الخروج في المدى من 0 إلى 254، وحالة الخروج 255 محجوزة بواسطة PHP ولا يجوز استخدامها، وتستخدم الحالة 0 لإنهاء البرنامج بنجاح.

القيم المعادة

لا تعيد البنية exit()‎ قيمًا.

أمثلة

المثال 1: مثال على البنية exit()

<?php

$filename = '/path/to/data-file';

$file = fopen($filename, 'r')

   or exit("unable to open file ($filename)");

?>

المثال 2: مثال على استخدام المعامل status

<?php

// تغلق البرنامج بشكل طبيعي

exit;

exit();

exit(0);

// تغلق البرنامج مع حالة خروج تشير إلى خطأ

exit(1);

exit(0376); // في النظام الثماني

?>

المثال 3: مثال على تشغيل دوال إيقاف التشغيل والدالة الهادمة دون عائق

<?php

class Foo

{

   public function __destruct()

   {

       echo 'Destruct: ' . __METHOD__ . '()' . PHP_EOL;

   }

}

function shutdown()

{

   echo 'Shutdown: ' . __FUNCTION__ . '()' . PHP_EOL;

}

$foo = new Foo();

register_shutdown_function('shutdown');

exit();

echo 'This will not be output.';

?>

ناتج المثال السابق:

Shutdown: shutdown()

Destruct: Foo::__destruct()

ملاحظات

ملاحظة: نظرًا لأن exit()‎ بنية من بنى اللغة وليست دالةً، فلا يمكن استدعائها باستخدام الدوال المتغيرة.

ملاحظة: تكافئ البنيةُ exit()‎ البنيةَ die()‎.

انظر أيضًا

مصادر