راکت
حل شده

use شدن کلاس ها به شکل اتوماتیک

9 پاسخ

با سلام.
من از phpstorm استفاده میکنم اما وقتی از کلاسی استفاده میکنم نمیتونم به طور اتوماتیک useکنم ممنون میشم کمکم کنید

m.mahmoudi
m.mahmoudi
@m.mahmoudi7276
ثبت پرسش جدید

پاسخ‌ها

9
رضا جهانگیر
رضا جهانگیر
@rezajahangir

تخصص: Full-Stack Developer

بهترین پاسخ

سلام به شما دوست عزیز.
خودش به صورت اتوماتیک که use نمیشه، شما بر اساس نیازت اون چیزی که میخواین رو همونطور که دوست عزیزمون @mehdi0121 گفتن با گرفتن کلیدهای ctrl+space میتونی use کنی.
موفق باشید.

مهدی اردشیر
مهدی اردشیر
@mehdi0121

تخصص: یه برنامه نویس

سلام وقتی اسم کلاس رو نوشتی ctrl + space بزن بعدش انتخاب کن
حالا نمی دونم منظورت همین بودش یا نه
لینک زیر هم ببینی بد نیست
https://www.jetbrains.com/help/phpstorm/creating-and-optimizing-imports.html#disable-imports

m.mahmoudi
m.mahmoudi
@m.mahmoudi7276

سلام نه منظورم این هست که وقتی مثلا از کلاس Mail استفاده میشه بیاد و در بالای صفحه به طور اتوماتیک این کلاس رو use کنه.

شاید پاسخ شما همین‌جا باشد

m.mahmoudi
m.mahmoudi
@m.mahmoudi7276

من ممنونم از هر دوی دوستان.چون میدیدم در حین کد یک سری متد و ..به شکل توماتیک تو اموزش ها به شکل منو باز میشه فکر میکردم این هم اتوماتیک است.ایا همین متد و ...هم به همین روال هست که بنده فکر میکردم اتوماتیک هست؟
@mehdi0121
@rezajahangir

رضا جهانگیر
رضا جهانگیر
@rezajahangir

تخصص: Full-Stack Developer

ببینید بعضی موارد رو میشه شخصی سازی کرد اما مثلا داخل phpstorm وقتی pubf رو نوشتین، بعد کلید tab رو برنید خروجی زیر رو بهتون میده:

public function () 
{

}

موفق باشید.

سبحان دادخواه
سبحان دادخواه
@SobhanDadkhah

تخصص: دانشجوی برنامه نویسی :)

با سلام،
اگر متد ها و کلاس ها در هنگام باز کردن پروژه توسط PHPSTORM بررسی یا اصطلاحا index شده باشند موقعی که شما بخشی از اسم اون کلاس یا متد خاصی روی یک کلاس رو بنویسید منو باز میشه و اگر از طریق منو انتخاب کنید و یا با کلید های جهت یابی یدونش رو انتخاب و بعد Enter بزنید بصورت اتوماتیک واسه شما کلاس یا اینترفیس یا ... رو use میکنه درباره متد ها هم مثلا _construct بنویسید خودش میاد متد کانستراکت رو کامل میکنه .
ولی فرضا اگر یک کلاسی به نام Sobhan بنویسید که PHPStrom اتوماتیک نشناسه، باید روی اسمش برید و کلید های Alt + Enter بزنید و اونموقع میتونید کلاس مورد نظر رو از لیست انتخاب کنید. اگر هم کلاسی وجود نداشته باشه خود PHPStorm به شما پیشنهاد میده که کلاس رو بسازید
با استفاده از همون کلید ترکیبی)

m.mahmoudi
m.mahmoudi
@m.mahmoudi7276

سلام اقای دادخواه اگر متدهای اندیکس شده در phpstorm با نوشتن قسمتی از متد یا اسم کلاس منوی باز شونده نیاره دلیلش چی میتونه باشه؟و راه حلش چطور میتونه باشه که در نهایت خودش use کنه؟

@SobhanDadkhah

سبحان دادخواه
سبحان دادخواه
@SobhanDadkhah

تخصص: دانشجوی برنامه نویسی :)

@m.mahmoudi7276
سلام، من از تجربه خودم با کار با این ide گفتم. حقیقتش دقیق نمیدونم علتش چی میتونه باشه اما به ساختار پروژه هم بستگی داره. مثلا برای کار با لاراول اگر شما اسم یک متد از یک کلاس رو بیارید بصورت خام یعنی بدون نام بردن از کلاس طبیعتا PHPstorm پیشنهادی نخواهد داد.
مثلا

ExampleClass::methodN.. -> // showing methodName autocomplete
methodN .. -> // no result

طبیعتا اگر بخواد با هر کلیدی که شما میزنید بره تمامی متد های مختلف رو سرچ کنه میلیون ها متد در برنامه هست که اصلا امکان چنین چیزی به نظرم در بهترین حالت ساعت ها زمان میخواد :)

گاهی اوقات هم مثلا زمان استفاده از Facade های لاراول که خودتون بسازید ، چون عملا متدی روی کلاس تعریف نمیشه فقط از طریق کامنت ها و doc block های کلاستون متوجه میشه که چه مواردی وجود داره و autocomplete نمایش میده.

m.mahmoudi
m.mahmoudi
@m.mahmoudi7276

سلام @SobhanDadkhah
ممنون از وقتی که برای پاسخگویی قرار میدید.
یک قسمتی که اشاره کردید برای ساخت متد construct قبلا با این روش شما میتونستم متد رو درست کنم اما مدتی هست که این امکان برام حذف شده.
اما در رابطه با دسترسی به مثلا نوع داده متوجه شده که برای نمونه بعد $table-> اگر ctrl +space بزنم لیست رو برام میاره.

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام