الفرق بين المراجعتين لصفحة: «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"; | |||
} 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."; | |||
} | } | ||
?> | ?> | ||
سطر 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()
: تحديد الحد الأقصى لوقت التنفيذ.