# زبان های اسکریپتی > PHP > سوال: تشخیص مثبت یا منفی بودن عدد

## hassanzanjani1374

سلام . چجوری میشه با پی اچ پی مثبت یا منفی بودن یک عدد رو تشخیص داد ؟

----------


## blackmak

if($number > 0 )
{
	echo '+';
}
elseif($number < 0 )
{
	echo '-';
}
else
{
	echo '0';
}

----------


## MMSHFE

خوب اگه از صفر کوچکتر باشه منفیه دیگه!

----------


## hassanzanjani1374

این راه حل سادش هست . تابع خاصی نداره خود پی اچ پی ؟

----------


## blackmak

چرا هست ولی باید extention نصب باشه.
Requirements
Installation

echo gmp_sign("-200");
echo gmp_sign("0");
echo gmp_sign("200");

----------


## blackmak

این dll دانلود کن : php_gmp.dll
و در مسیری که وب سرورت نصب هست کپی کن . مثلا:
X:\xampp\php\ext
حالا از این مسیر php.ini باز کن:
X:\xampp\php\php.ini
و اینو پیدا کن :
;extension=php_gmp.dll
و ";" اولشو بردار و وب سرورتو restart کن یعنی اینطوری:
extension=php_gmp.dll
حالا باید بتونی از توابع GMP استفاده کنی.

----------


## MMSHFE

خوب چه کاریه؟ وقتی میشه با شرط (if($number < 0 بررسی کرد، چرا تابع بکار ببریم که سرعت رو هم میاره پایین؟ مثلاً بجاش حتماً باید بگیم ((if(is_negative($number ؟ حالا اگه تشخیص منفی بودن نیاز به چند خط دستور داشت، نوشتن تابع برای اینکار رو میشد توجیه کرد ولی اینکه کار پیچیده ای نیست. ضمناً شرط اول (بدون تابع) سریعتر از دومی (با تابع) انجام میشه چون دومی هم درهرحال داره مقایسه رو انجام میده ولی یک سربار اضافه (فراخوانی تابع) هم داره. موفق باشید.

----------


## blackmak

> خوب چه کاریه؟ وقتی میشه با شرط (if($number < 0 بررسی کرد، چرا تابع بکار ببریم که سرعت رو هم میاره پایین؟ مثلاً بجاش حتماً باید بگیم ((if(is_negative($number ؟ حالا اگه تشخیص منفی بودن نیاز به چند خط دستور داشت، نوشتن تابع برای اینکار رو میشد توجیه کرد ولی اینکه کار پیچیده ای نیست. ضمناً شرط اول (بدون تابع) سریعتر از دومی (با تابع) انجام میشه چون دومی هم درهرحال داره مقایسه رو انجام میده ولی یک سربار اضافه (فراخوانی تابع) هم داره. موفق باشید.


ما که با شما موافقیم ولی اسرار داشتن با تابع دیگه چه کنیم  :چشمک:

----------


## maktoom

سلام
جدا برام سوال شد. چرا یه همچین چیزی رو واسش تابع گذاشتن؟ دلیل خاصی داره؟ کاربرد خاصی داره؟

----------


## blackmak

نه php خودش نداره اینو برصورت پیش فرض فقط یه کتابخونس GMP که php ساپورت میکنه. البته این یه تابع هستش GMP کلی توابع برای محاسبات داره. کلا یه کتابخونه ریاضی هست دیگه. GMP

----------

