منبع اصلی نوشتار زیر در این لینک قرار دارد

بازم PHP و نکات کوچیکش!

یه پرسشنامه برای گرفتن چند تا برنامه نویس PHP طرح کرده بودم‌ (بنا به خواست یه کارفرما). چند تا سوال در زمینه PHP هم پرسیده بودم، یکیش همون قضیه اولویت عملگرها بود و دقیقا کدی که اینجا هست رو پرسیده بودم خروجیش چی میشه، که هیچ کس درست جواب نداده بود. (برام زیاد دور از انتظار نبود.) یکی هم این قضیه اپراتورهای Identical بود که چند نفر درست جواب دادن ولی خیلی کم.
سوال دیگه ای هم که هیچ کس جواب نداده بود‌ ( و یه کم هم عجیب بود برام! این دیگه سخت نیست که!! )‌ این بود که خروجی کد زیر چیه :

<?php
  $x=0123;
  if ($x==123)
    echo "Equal";
  else
    echo "Not equal";

جالبه که حتی یه نفر از اینها (که چند تاییشون در حدی مدعی بودن که من با خودم گفتم دیگه باید برم غاز بچرونم!) این سوال رو جواب ندادن!

– خوب بابت تکمیل پست این دو تا با هم برابر نیستن! تو PHP ، عدد صحیحی که یه صفر در آغاز داره میشه مبنای هشت. یعنی عدد 0123 میشه 83
– یه نکته دیگه اینکه اگر مثلا بنویسیم 012394 چون 9 در اعداد مبنای 8 وجود نداره، PHP خیلی ساده از اون به بعدو حذفش میکنه و میشه همون 0123 .



برچسب ها : , ,