PDA

View Full Version : یعنی این چیزارو توی php میبینم میخوام کلمو بکوبم به دیوار "2" :|



n0o0b_sina
دوشنبه 25 اسفند 1393, 03:39 صبح
سلام


$hash = md5(uniqid(rand()));
$value = $hash.','.time()+(3*24*60*60);
echo $value;
دوستان لطفا یکی دلیل اتفاق بالا رو برای من توضیح بده، من سوادم نکشید. ممنون :دی
البته اینجوری بنویسیم درست میشه!


$hash = md5(uniqid(rand()));
$time = time()+(3*24*60*60);
$value = $hash.','.$time;
echo $value;

bagherok
دوشنبه 25 اسفند 1393, 07:31 صبح
.
دیواری کوتاه تر از دیوار PHP پیدانکردید:تشویق:
اول شما یه بار دیگه ترتیب اولویت عملگر ها رو مطالعه بفرمایید:چشمک:

این چیزی که شما نوشتید اینه

$value = ($hash.','.time())+(3*24*60*60);


درستش اینه


$value = $hash.','.(time()+(3*24*60*60));

freeman99
دوشنبه 25 اسفند 1393, 08:16 صبح
...


129469


...

j_naroogha@yahoo.com
دوشنبه 25 اسفند 1393, 08:48 صبح
عزیز اگه فکر میکنی php الکیه میتونی بری سراغ asp ناالکی !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

freeman99
دوشنبه 25 اسفند 1393, 09:09 صبح
این مورد که ظاهرا اشتباه خود استارتر بوده و ما هم بذله گویی و شوخی میکنیم!
ولی اینو دیدم یاد یکی دیگر از ویژگیهای غیرعادی PHP افتادم. اونم اینکه PHP از عملگر نقطه برای اتصال رشته ها استفاده میکنه که این تاجاییکه میدونم و حضور ذهن دارم در بین زبانهای برنامه نویس استثناء (یا حداقل خیلی کمیاب) و غیرعادیه. چون عملگر نقطه کاربردهای استاندارد و متعارف دیگری داره که همانا مثلا دسترسی به پراپرتی ها و متدهای آبجکت ها در دیگر زبانهاست. شاید این مسئله بخاطر این باشه که PHP از ابتدا شیء گرایی نداشته و این عملگر رو برای کاربردهای دیگر نیاز نداشتن از طرف دیگر دیدن خب عملیات اتصال رشته ای در برنامه نویسی وب خیلی زیاده و تایپ کردن نقطه نسبت به کاراکترهای دیگر مثل «+» ساده تره (برای تایپ + باید شیفت رو هم نگه دارید). خلاصه یه همچین چیزایی!
ولی خب الان که PHP امکانات شی گرایی خوبی داره، مجبور شدن از ‎->‎ برای دسترسی به اجزای آبجکت ها استفاده کنن. از اون طرف ‎=>‎ رو داریم که شباهت زیادی با ‎->‎ داره و کاربردش در موارد دیگری مثل آرایه ها و foreach است. این یخورده دردسرسازه در یادگیری و استفاده و گاهی آدم این دوتا رو با هم اشتباه میکنه. ضمنا تایپ کردن ‎->‎ هم نیاز به گرفتن شیفت و تایپ دو کاراکتر بجای یک کاراکتر بدون شیفت داره.
البته در کل اینا شاید زیاد هم مهم نباشه. فقط از روی کنجکاوی و علاقه به تحلیل این جزییات و اطمینان از علتشون مطرح کردم.
اصلا شاید خوانایی یه چیزی مثل config->property از config.property بیشتر هم باشه. اولی یجورایی بنظر توی چشم تر و گویا میاد. ولی خب چون توی زبانهای دیگر از نقطه برای این کار استفاده میشه، پیروی از عرف و استاندارد عمومی و هماهنگ بودن با اونا از این جهت هم بهرحال مزیت خودش رو داره. اینطوری مثلا از نظر یادگیری با زمینهء قبلی در زبانهای دیگر و قاطی نکردن وقتی زبانهای مختلفی کار میکنیم خوبه.

MMSHFE
دوشنبه 25 اسفند 1393, 09:37 صبح
بحثهای حاشیه ای ممنوع. تاپیک قفل شد.