پرسش و پاسخ های استخدامی php

پرسش و پاسخ های استخدامی php

307
۲ سال پیش
0

نیاز به یه آزمون مهارت های php دارید یا اینکه استخدامی php در کار هستش؟

خوب پست خوبی رو برا دانسته های استخدامی انتخاب کردید...

برنامه نویسای مطرحی،پرسش های تخصصی php رو اماده کردن که اکثر مواقع توی استخدامی ها از توسعه دهنده های php سوال میشه.

اگه شما هم یکی از مصاحبه کنندگان از php کار ها هستید یا خودتون قراره استخدام بشید بد نیست با این سوال ها اشنا بشید و بدونید چه سوال هایی پرسیده میشه.

البته اینا در حد تجربه س و راه های مختلفی هست برای تشخیص مهارت برنامه نویس ولی این سوال ها در واقع سطح برنامه نویس رو تشخیص میده.

بدون فوت وقت بریم سر اصل مطلب...

و اما سوال ها چی هستند؟

 

سوال شماره 1 مصاحبه php

چه تفاوتی بین دستور include و require وجود داره؟

هر دو فایلی رو داخل اسکریپت وارد میکنند ولی دستور require در صورت نبودن فایل،با یه خطای مهلک یا fatal error،از process خارج میشه و ادامه کار انجام نمیشه.

ولی دستور include کل اسکریپت رو از کار نمیندازه و کارو ادامه میده.

 

سوال شماره 2 مصاحبه php

چطوری میتونیم آی پی کاربر رو بگیریم؟

این سوال ممکنه یه سوال انحرافی برای توسعه دهنده باشه چون راه های زیادی برای این کار هست.

به عنوان مثال دستور زیر ساده ترین راه هستش:

$_SERVER["REMOTE_ADDR"];

اما داوطلب میتونه کلی کد بنویسه برا این کار.

 

سوال شماره 3 مصاحبه php

تفاوت بین دستور unset و unlink چیه؟

دستور unset مقدار متغیر رو به undefined تغییر میده در حالی که unlink یه فایلی رو از سیستم حذف میکنه.(خدایی سوال چرتی بوده)

 

سوال شماره 4 مصاحبه php

خروجی کد زیر چی هست؟

$a = '1';

$b = &$a;

$b = "2$b";

echo $a.", ".$b;

این سوال خفنیه کفم برید

نتیجه این دستور میشه21,21

 

سوال شماره 5 مصاحبه php

انواع خطا ها در php کدامند و چه تفاوتی دارند؟

سه نوع خطای اصلی در php وجود دارند که به شرح زیر هستش:

خطای Notice که ساده و غیر خطریه که موقع اجرای اسکریپت اتفاق میفته و فقط در حد گوشزد به برنامه نویس هستش.مثلا وجود نداشتن متغیر

خطای Warning که مهمتر از خطای notice هستش با اینکه توی این خطا هم اسکریپت به کار خودش ادامه میده مثلا توی include در صورت نبودن فایل این نوع خطا پیش میاد.

خطای Fatal که لامسب خیلی خطریه و باعث میشه اسکریپت کلا از کار بیفته مثل دستور require که اگه فایل نباشه کلا از کار میندازه.

 

سوال شماره 6 مصاحبه php

تفاوت بین GET و POST چیست؟

در واقع GET داده ایی که با این روش ارسال میشن توی نوار آدرس مرورگر نمایش داده میشه در حالی که POST دیده نمیشه.

GET فقط میتونه نهایتا 2048 کاراکتر رو بفرسته ولی پست تقریبا محدودیتی نداره.

GET فقط اجازه میده داده های اسکی بفرستید ولی POST میتونه حتی باینری هم بفرسته (یه رفیقی داشتم دهن سرویس binary رو بیناری تلفظ میکرد :) )

معمولا GET برای دریافت اطلاعات استفاده میشه در حالی که از POST برای بروز رسانی یا ثبت یه رکوردی استفاده میشه.

 

سوال شماره 7 مصاحبه php

]چطوری میشه گزارش خطای php رو فعال کرد؟

باید عبارت display_errors رو توی فایل php.ini چک کنیم و برابر on کنیم.

یا میتونیم از طریق کدنویسی با دستور ini_set('display_errors',1) اینکار رو انجام بدیم.

دستور error_reporting(E_ALL) هم بصورت موقت برای اون process ی که اجرا میشه خطا ها رو نمایش میده.

 

سوال شماره 8 مصاحبه php

Traits ها چی هستن؟

تریت ها در واقع مکانیسمی هستن که به برنامه نویس این اجازه رو میده که بتونه کدهای قابل استفاده بسازه مثل php .

 

سوال شماره 9 مصاحبه php

آیا میشه مقدار داده ای از نوع constant رو در حال اجرا عوض کرد؟

خیر،مقدار constant بعد از تعریف دیگر قابل تغییر نیست و فقط بار اول تعریف و مقدار دهی میشود.

 

سوال شماره 10 مصاحبه php

شما میتونید یه کلا final رو extend کنید؟

خیر،شما نمیتونید یه کلاس final رو extend کنید.

یه کلاس یا متد final از override کردن کلاس یا متد جلوگیری میکنه.

 

سوال شماره 11 مصاحبه php

متد های construct__ و destruct__ در کلاس php چی هستن؟

همه آبجکت ها در php این متد ها رو بصورت built-in دارن.

متد construct وقتی که برای اولین بار کلاسی initialize میشه فراخوانی میشه و destruct هم وقتی اون کلاس یا instance از بین میره فراخوانی میشه.

 

سوال شماره 12 مصاحبه php

چطوری میشه تعداد المنت های یه آرایه رو گرفت؟

با تابع count میشه تعداد خونه های یه ارایه رو گرفت.

 

سوال شماره 13 مصاحبه php

چطوری میشه تابعی تعریف کرد که یه پارامتر با نام hello بگیره؟

اگه hello مقدار true داشته باشه تابع باید hello رو چاپ کنه در غیر اینصورت باید bye رو چاپ کنه.

<?php

function showMessage($hello=false) {

      echo ($hello)?'hello':'bye';

}

?>

در این سوال،شما میتونید برنامه نویس رو ارزیابی کنید که چطوری یه تابع رو تعریف میکنه و چطوری پارامتر های تابع رو کنترل کنه که بتونن فراخوانی بشن یا نشن.

 

سوال شماره 14 مصاحبه php

مقدار یه متغییری با نام input برابره با 1,2,3,4,5,6,7. چطوری میتونیم مجموع این اعداد رو بدست بیاریم؟

<?php

echo array_sum(explode(',',$input));

?>

تابع explode رشته رو با جدا کننده ویرگول از هم جدا میکنه و با تابع array_sum مجموعشون رو بدست میاره.

این مهمه که بدونید برنامه نویس این تابع رو میشناسه یا نه.

در واقع پاسخ منحصری برای این سوال وجود نداره اما پاسخ باید شبیه به این باشه.

 

سوال شماره 15 مصاحبه php

چند نوع محدوده برای تعریف در php داریم؟

سه نوع private که متغیر ها یا متد ها فقط برای خودش قابل نمایش هست و نوع public که برای کلاس های دیگه هم قابل دسترسی س و نوع protected که فقط کلاس هایی که از این کلاس extend شده اند قابل دسترسی س.

 

سوال شماره 16 مصاحبه php

MVC مخفف چیه و کاربرد هر یک رو بگویید...

MVC مخفف Model View Controller هست که controller وظیفه هندل کردن دادهای ارسال شده رو داره و view هم وظیفه نمایش داده های مورد نیاز و model در واقع یه مدل سازی از داده ها هستش که بین کنترلر و ویوو هست.

 

سوال شماره 17 مصاحبه php

قطع کد زیر چی رو نشون میده؟

$i = 016;

echo $i /2;

خروجی باید 7 باشه.عدد صفر به معنای اعداد اکتال در php هستش.

 

سوال شماره 18 مصاحبه php

چرا از === بجای == استفاده میکنیم؟

اگه شما میخواید نوع واقعی داده ای رو بررسی کنید مثل عددی یا boolean،گزینه === بهترین انتخاب هستش چرا که طریف رو تبدیل به نوع داده متناسب میکنه و بعد مقایسه میکنه.

 

سوال شماره 19 مصاحبه php

PSRs چیه؟

PSRs استاندارد هایی س که به برنامه نویسا توصیه میشه تا از اون استفاده کنن تا انتظارات همدیگه به هم نزدیک تر باشه.مثلا توی PSR-2 شما با استاندارد های سبک کدنویسی اشنا خواهید شد.

 

 

سوال شماره 20 مصاحبه php

از composer استفاده میکنید؟ چه مزیت هایی داره؟

composer ابزاریه برای مدیریت وابستگی های یه پروژه.

مثلا کتابخونه ای رو توی پروژه استفاده میکنید که میشه با composer اونو دانلود کرد یا بروز کرد و در پروژه استفاده کرد.

مزایابش هم اینه که بدون فوت وقت و عیب های کتابخونه میتونید با composer اخرین نسخه رو استفاده کنید.

 

خوب تموم شد.

سوال ها زیاده ولی عاممما یه سری هاشو که مهم بودن توضیح دادم

البته یه سری سوال ها هم هست مثل :

تفاوت استفاده از دیتابیس با PDO و دستور داخلی mysql در php چیه؟

نحوه ارث بری در php رو توضیح بدید!

ایا میدونید PHP-FIG چیه؟

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

چه فریم ورکی رو پیشنهاد میدید؟

تجربه کار با init testing رو داشتید؟

 

خلاصه

اگه به دنبال یک توسعه دهنده PHP برای سایت تجارت الکترونیکی ، برنامه دسک تاپ یا موارد دیگه هستید ، امیدواریم این چند تا سوال مصاحبه شما را در مسیر درست یافتن یک توسعه دهنده برتر برای نیازهای شما قرار بده.

هر چند توسعه دهنده ای که میخواد استخدام بشه هم میتونه از این موارد استفاده کنه.

حتما هنگام صحبت در مورد PHP ، فریم ورک های PHP مانند لاراول ، سیمفونی و سایر موارد را فراموش نکنید.

برچسب ها :
  • php
  • استخدام
نظر خود را بنویسید...