الفرق بين المراجعتين لصفحة: «PHP/time nanosleep»
< PHP
رؤيا-بنعطية (نقاش | مساهمات) إضافات و تعديلات تنسيقية |
رؤيا-بنعطية (نقاش | مساهمات) تعديلات طفيفة على التنسيق |
||
سطر 26: | سطر 26: | ||
== سجل التغييرات == | == سجل التغييرات == | ||
{| class="wikitable" | {| class="wikitable" | ||
!الإصدار | |||
!الوصف | |||
|- | |- | ||
|5.3.0 | |5.3.0 | ||
سطر 36: | سطر 36: | ||
المثال 1: مثال على الدالة <code>time_nanosleep()</code><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"; | |||
} elseif (is_array($nano)) { | } elseif (is_array($nano)) { | ||
$seconds = $nano['seconds']; | |||
$nanoseconds = $nano['nanoseconds']; | |||
echo "Interrupted by a signal.\n"; | |||
echo "Time remaining: $seconds seconds, $nanoseconds nanoseconds."; | |||
} | } | ||
?> | ?> | ||
المراجعة الحالية بتاريخ 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()
: تحديد الحد الأقصى لوقت التنفيذ.