pary_daryayi

تابع max و min

4 پست در این موضوع قرار دارد

سلام دوستان . یه سوال ساده :

مبنای تعیین ماکزیمم و مینیمم در آرایه چیه ؟

1 ) اگر همه ی عناصر عدد باشند که مشخصه .

2) اگر همه ی عناصر رشته باشند هم مشخصه .

3) اگر ترکیبی از عدد و رشته باشند چطور محاسبه میشه . این مثال ماکزیمم و مینمم میشه = 9944s . چرا ؟


$b=array(7,99,'s','9944s');

در عملگرها تبدیل اتفاق میفته , اگر رشته ای ابتداش عدد باشه وقتی به int تبدیل میشه عدد ابتدا رو درنظر میگیره و اگر عدد نباشه 0 درنظر میگیره.


echo "9test"+1; // result : 10
echo "test9"+1; // result : 1

اینجا اگر بگیم رشته ی '9944s' وقتی به int تبدیل میشه , برابر میشه با 9944 , ماکزیمم منطقی بدست میاد ولی چرا مینمم هم همین میشه.

ویرایش شده در توسط pary_daryayi

به اشتراک گذاری این پست


لینک به پست

کلا رشته در جمع درنظر گرفته نمیشه

برای مین و ماکس چه کدی استفاده کردید؟

به اشتراک گذاری این پست


لینک به پست

به این صورت :


max(7,99,'s','9944s');//returns 9944s
max(7,99,'9944s','s');//returns s

min(7,99,'s','9944s');//returns 9944s
min(7,99,'9944s','s');//returns s

خروجی عجیب نیست ؟

manual رو نگاه کردم ولی باز به منطق خاصی نرسیدم .

ویرایش شده در توسط pary_daryayi

به اشتراک گذاری این پست


لینک به پست


<?php
echo min(2, 3, 1, 6, 7); // 1
echo min(array(2, 4, 5)); // 2
// The string 'hello' when compared to an int is treated as 0
// Since the two values are equal, the order they are provided determines the result
echo min(0, 'hello'); // 0
echo min('hello', 0); // hello
// Here we are comparing -1 < 0, so -1 is the lowest value
echo min('hello', -1); // -1
// With multiple arrays of different lengths, min returns the shortest
$val = min(array(2, 2, 2), array(1, 1, 1, 1)); // array(2, 2, 2)
// Multiple arrays of the same length are compared from left to right
// so in our example: 2 == 2, but 4 < 5
$val = min(array(2, 4, 8), array(2, 5, 1)); // array(2, 4, 8)
// If both an array and non-array are given, the array is never returned
// as comparisons treat arrays as greater than any other value
$val = min('string', array(2, 5, 7), 42); // string
// If one argument is NULL or a boolean, it will be compared against
// other values using the rule FALSE < TRUE regardless of the other types involved
// In the below examples, both -10 and 10 are treated as TRUE in the comparison
$val = min(-10, FALSE, 10); // FALSE
$val = min(-10, NULL, 10); // NULL
// 0, on the other hand, is treated as FALSE, so is "lower than" TRUE
$val = min(0, TRUE); // 0
?>


<?php
echo max(2, 3, 1, 6, 7); // 7
echo max(array(2, 4, 5)); // 5
// The string 'hello' when compared to an int is treated as 0
// Since the two values are equal, the order they are provided determines the result
echo max(0, 'hello'); // 0
echo max('hello', 0); // hello
// Here we are comparing -1 < 0, so 'hello' is the highest value
echo max('hello', -1); // hello
// With multiple arrays of different lengths, max returns the longest
$val = max(array(2, 2, 2), array(1, 1, 1, 1)); // array(1, 1, 1, 1)
// Multiple arrays of the same length are compared from left to right
// so in our example: 2 == 2, but 5 > 4
$val = max(array(2, 4, 8), array(2, 5, 1)); // array(2, 5, 1)
// If both an array and non-array are given, the array will be returned
// as comparisons treat arrays as greater than any other value
$val = max('string', array(2, 5, 7), 42); // array(2, 5, 7)
// If one argument is NULL or a boolean, it will be compared against
// other values using the rule FALSE < TRUE regardless of the other types involved
// In the below example, -10 is treated as TRUE in the comparison
$val = max(-10, FALSE); // -10
// 0, on the other hand, is treated as FALSE, so is "lower than" TRUE
$val = max(0, TRUE); // TRUE
?>

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری