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

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


تُأَخِّرُ الدالةُ time_nanosleep()‎ تنفيذَ البرنامج عددًا من الثواني والنانوثانية.
تُأَخِّرُ الدالةُ <code>time_nanosleep()</code>‎ تنفيذَ البرنامج عددًا من الثواني والنانوثانية.


== الوصف ==
== الوصف ==
<syntaxhighlight lang="php">
<syntaxhighlight lang="php">
mixed time_nanosleep ( int $seconds , int $nanoseconds )
mixed time_nanosleep ( int $seconds , int $nanoseconds )
</syntaxhighlight>تُأَخِّرُ الدالةُ time_nanosleep()‎ تنفيذَ البرنامج بتحديد المعاملين seconds و nanoseconds.
</syntaxhighlight>تُأَخِّرُ الدالةُ <code>time_nanosleep()‎</code> تنفيذَ البرنامج بتحديد المعاملين <code>seconds</code> و <code>nanoseconds</code>.


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


=== seconds ===
=== <code>seconds</code> ===
يجب أن يكون عددًا صحيحًا غير سالب.
يجب أن يكون عددًا صحيحًا غير سالب.


=== nanoseconds ===
=== <code>nanoseconds</code> ===
يجب أن يكون عددًا صحيحًا غير سالب أقل من مليار.
يجب أن يكون عددًا صحيحًا غير سالب أقل من مليار.


== القيم المعادة ==
== القيم المعادة ==
تعيد الدالة time_nanosleep()‎ القيمة TRUE عند نجاح تنفيذها، أو القيمة FALSE عند حدوث خطأ.
تعيد الدالة <code>time_nanosleep()‎</code> القيمة <code>TRUE</code> عند نجاح تنفيذها، أو القيمة <code>FALSE</code> عند حدوث خطأ.


إذا قوطع التأخير بإرسال النظام لإشارة من إشارات المقاطعة، فستعيد الدالة time_nanosleep()‎ مصفوفةً ترابطيةً فيها المكونات الآتية:
إذا قوطع التأخير بإرسال النظام لإشارة من إشارات المقاطعة، فستعيد الدالة <code>time_nanosleep()‎</code> مصفوفةً ترابطيةً فيها المكونات الآتية:
* seconds: عدد الثواني المتبقية في التأخير.
* <code>seconds</code>: عدد الثواني المتبقية في التأخير.
* nanoseconds: عدد النانوثانية المتبقية في التأخير.
* <code>nanoseconds</code>: عدد النانوثانية المتبقية في التأخير.


== سجل التغييرات ==
== سجل التغييرات ==
{| class="wikitable"
{| class="wikitable"
|الإصدار
!الإصدار
|الوصف
!الوصف
|-
|-
|5.3.0
|5.3.0
|صارتْ الدالةُ time_nanosleep()‎ الآن مُتاحةً على منصات ويندوز.
|صارتْ الدالةُ <code>time_nanosleep()‎</code> الآن مُتاحةً على منصات ويندوز.
|}
|}


== أمثلة ==
== أمثلة ==
المثال 1: مثال على الدالة time_nanosleep()‎<syntaxhighlight lang="php">
المثال 1: مثال على الدالة <code>time_nanosleep()</code>‎<syntaxhighlight lang="php">
<?php
<?php
// احذر! لن يعمل هذا كما هو متوقع إذا أُعِيْدَتْ مصفوفة
// احذر! لن يعمل هذا كما هو متوقع إذا أُعِيْدَتْ مصفوفة
if (time_nanosleep(0, 500000000)) {
if (time_nanosleep(0, 500000000)) {
   echo "Slept for half a second.\n";
   echo "Slept for half a second.\n";
}
}
// هذا أفضل
// هذا أفضل
if (time_nanosleep(0, 500000000) === true) {
if (time_nanosleep(0, 500000000) === true) {
   echo "Slept for half a second.\n";
   echo "Slept for half a second.\n";
}
}
// وهذا هو الأفضل
// وهذا هو الأفضل
$nano = time_nanosleep(2, 100000);
$nano = time_nanosleep(2, 100000);
if ($nano === true) {
if ($nano === true) {
   echo "Slept for 2 seconds, 100 microseconds.\n";
   echo "Slept for 2 seconds, 100 microseconds.\n";
} elseif ($nano === false) {
} elseif ($nano === false) {
 
  echo "Sleeping failed.\n";
   echo "Sleeping failed.\n";
 
} elseif (is_array($nano)) {
} elseif (is_array($nano)) {
 
  $seconds = $nano['seconds'];
   $seconds = $nano['seconds'];
 $nanoseconds = $nano['nanoseconds'];
 
 echo "Interrupted by a signal.\n";
   $nanoseconds = $nano['nanoseconds'];
 echo "Time remaining: $seconds seconds, $nanoseconds nanoseconds.";
 
   echo "Interrupted by a signal.\n";
 
   echo "Time remaining: $seconds seconds, $nanoseconds nanoseconds.";
 
}
}
?>
?>


سطر 83: سطر 62:


== انظر أيضًا ==
== انظر أيضًا ==
* الدالة sleep()‎: تأخير التنفيذ.
* الدالة <code>[[PHP/sleep|sleep()]]</code>‎: تأخير التنفيذ.
* الدالة usleep()‎: تأخير التنفيذ مدةً تُقدر بالميكروثانية.
* الدالة <code>[[PHP/usleep|usleep()‎]]</code>: تأخير التنفيذ مدةً تُقدر بالميكروثانية.
* الدالة time_sleep_until()‎: تأخير البرنامج حتى الوقت المحدد.
* الدالة <code>[[PHP/time sleep until|time_sleep_until()]]</code>‎: تأخير البرنامج حتى الوقت المحدد.
* الدالة set_time_limit()‎: تحديد الحد الأقصى لوقت التنفيذ.
* الدالة <code>[[PHP/set time limit|set_time_limit()‎]]</code>: تحديد الحد الأقصى لوقت التنفيذ.


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

المراجعة الحالية بتاريخ 15:55، 29 مايو 2018

(PHP 5, PHP 7)

تُأَخِّرُ الدالةُ time_nanosleep()‎ تنفيذَ البرنامج عددًا من الثواني والنانوثانية.

الوصف

mixed time_nanosleep ( int $seconds , int $nanoseconds )

تُأَخِّرُ الدالةُ time_nanosleep()‎ تنفيذَ البرنامج بتحديد المعاملين seconds و nanoseconds.

المعاملات

seconds

يجب أن يكون عددًا صحيحًا غير سالب.

nanoseconds

يجب أن يكون عددًا صحيحًا غير سالب أقل من مليار.

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

تعيد الدالة time_nanosleep()‎ القيمة TRUE عند نجاح تنفيذها، أو القيمة FALSE عند حدوث خطأ.

إذا قوطع التأخير بإرسال النظام لإشارة من إشارات المقاطعة، فستعيد الدالة time_nanosleep()‎ مصفوفةً ترابطيةً فيها المكونات الآتية:

  • seconds: عدد الثواني المتبقية في التأخير.
  • nanoseconds: عدد النانوثانية المتبقية في التأخير.

سجل التغييرات

الإصدار الوصف
5.3.0 صارتْ الدالةُ time_nanosleep()‎ الآن مُتاحةً على منصات ويندوز.

أمثلة

المثال 1: مثال على الدالة time_nanosleep()

<?php
// احذر! لن يعمل هذا كما هو متوقع إذا أُعِيْدَتْ مصفوفة
if (time_nanosleep(0, 500000000)) {
   echo "Slept for half a second.\n";
}
// هذا أفضل
if (time_nanosleep(0, 500000000) === true) {
   echo "Slept for half a second.\n";
}
// وهذا هو الأفضل
$nano = time_nanosleep(2, 100000);
if ($nano === true) {
   echo "Slept for 2 seconds, 100 microseconds.\n";
} elseif ($nano === false) {
  echo "Sleeping failed.\n";
} elseif (is_array($nano)) {
  $seconds = $nano['seconds'];
  $nanoseconds = $nano['nanoseconds'];
  echo "Interrupted by a signal.\n";
  echo "Time remaining: $seconds seconds, $nanoseconds nanoseconds.";
}
?>

انظر أيضًا

  • الدالة sleep()‎: تأخير التنفيذ.
  • الدالة usleep()‎: تأخير التنفيذ مدةً تُقدر بالميكروثانية.
  • الدالة time_sleep_until()‎: تأخير البرنامج حتى الوقت المحدد.
  • الدالة set_time_limit()‎: تحديد الحد الأقصى لوقت التنفيذ.

مصادر