با سلام , بالاخره بعد از مدتی دروه حرفه ای PHP را آغاز کردم و مباحث پیشرفته PHP را با یکدیگر دنبال خواهیم کرد. پیش نیاز این جلسه گذراندن دوره مقدماتی PHP هست که قبلا در سایت منتشر شده . در اولین جلسه با شی گرایی آشنا خواهیم شد. ویدیو این قسمت را از باکس زیر میتوانید دانلود کنید : (فایل ویدیویی با فرمت 7z فشرده شده و برای اکسترک باید از برنامه 7zip استفاده کنید)
لینک دانلود | 19 مگابایت | 30 دقیقه |
جزوه این قسمت:
تعریف شخصی بنده از شی گرایی اینه : شی گرایی یعنی بسته بندی توابع و متغییر های مربوط به هم و انتخاب یک نام برای این بسته
در ابتدا باید یک کلاس تعریف کرد و در حقیقت بسته مورد نظرمون را ایجاد کنیم :
1 2 3 4 5 |
<?php class myobj { } ?> |
که در بسته بالا ما نام myobj را انتخاب کردیم , خب حالا داخل بسته ایجاد شده (داخل آکولاد) متغییر و توابع مورد نیاز را قرار میدهیم. برای تعریف متغییر در داخل بسته کلاس باید ابتدا کلمه کلیدی var را بکار ببریم و سپس نام متغییر را وارد کنیم , دقت کنید در هنگام تعریف متغییر در کلاس امکان مقدار دهی اولیه نیست :
1 2 3 4 5 6 |
<?php class myobj { var $a; } ?> |
و به همین ترتیب هر تعداد متغییری که لازم بود درون کلاس تعریف میکنیم. برای تعریف تابع درون کلاس به همان شیوه قبل اقدام میکنیم :
1 2 3 4 5 6 7 8 9 10 |
<?php class myobj { var $a; function start(){ echo "start<br/>"; } } ?> |
اما در یک کلاس توابع و متغییر ها باید با یکدیگر در ارتباط باشند و توابع به متغییر ها دسترسی داشته باشند , برای این کار از اشاره گر this$ استفاده میشود . مثلا تابع get_a را برا برگرداندن مقدار متغییر a ایجاد می کنم :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
<?php class myobj { var $a; function start(){ echo "start<br/>"; } function get_a(){ return $this -> a; } } ?> |
همچنین برای تغییر متغییر a تابع set_a را به شکل زیر ایجاد میکنم :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<?php class myobj { var $a; function start(){ echo "start<br/>"; } function get_a(){ return $this -> a; } function set_a($g){ $this -> a = $g; } } ?> |
با تعریف کلاس یک نقشه برای ایجاد شی ساختیم ,حال زمان ایجاد یک شی است. کلاس الگویی ایجاد یک شی است مثل نقشه ساختمان که الگو ساخت یک ساختمان است ولی یک ساختمان نیست. برای ایجاد شی از روی الگوی کلاس باید شی را نمونه سازی کنیم , برای اینکار به شکل زیر اقدام میکنیم :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
<?php class myobj { var $a; function start(){ echo "start<br/>"; } function get_a(){ return $this -> a; } function set_a($g){ $this -> a = $g; } } $one = new myobj(); ?> |
در خط ۱۹ ضمن تعریف یک کلاس یک شی از این کلاس نمونه سازی کردیم که نام این شی را one قرار دادیم , عبارت new یک دستور برای تخصیص حافظه به شی است و در نهایت نام کلاسی که شی باید از روی آن نمونه سازی شود را وارد کردیم که در اینجا از کلاس myobj یک شی نمونه سازی کردیم.
حال برای فراخوانی توابع از شی ایجاد شده به شکل زیر اقدام میکنیم , مثلا من قصد دارم تابع start مربوط به شی one را فراخوانی کنم :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
<?php class myobj { var $a; function start(){ echo "start<br/>"; } function get_a(){ return $this -> a; } function set_a($g){ $this -> a = $g; } } $one = new myobj(); $one -> start(); ?> |
در خط بیستم تابع start را از شی one فراخوانی کردیم و اگر صفحه را اجرا کنید متوجه عبارتی که تابع start چاپ میکند خواهید شد. همچنین برای استفاده از سایر متد ها باز به همین شکل اقدام میشود مثلا از تابع set_a برای مقدار دهی به متغییر a استفاده میکنم :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
<?php class myobj { var $a; function start(){ echo "start<br/>"; } function get_a(){ return $this -> a; } function set_a($g){ $this -> a = $g; } } $one = new myobj(); $one -> set_a(200); ?> |
اما برای فراخوانی متغییر از یک شی میتوان یک تابع درون کلاس مربوط به شی تعریف کرد که مقدار متغییر را برگرداند (return) که برای اینکار ما تابع get_a را ایجاد کردیم , همچنین میتوان مستقیما مقدار متغییر a را بدست آورد مثلا :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
<?php class myobj { var $a; function start(){ echo "start<br/>"; } function get_a(){ return $this -> a; } function set_a($g){ $this -> a = $g; } } $one = new myobj(); $one -> set_a(200); echo $one -> a; ?> |
در دستورات بالا ما در خط ۲۱ متغییر a را از شی one فراخوانی کردیم و آنرا با دستور echo چاپ کردیم.
دقت کنید همانطور که از روی یک نقشه ساختمان میتوان چند ساختمان ساخت یا یک تابع را میتوان چند بار فراخوانی کرد , به همین صورت میتوان از یک کلاس چند شی نمونه سازی که برای هر کدام یک حافظه مجزا در نظر گرفته می شود و متغییر های آنان با یکدیگر هیچ ارتباطی ندارد. مثلا اگر از روی کلاس بالا چند شی نمونه سازی شد هر کدام از اشیا یک متغییر با نام a دارند که کاملا از یکدیگر مجزا اند و تغییر هر کدام تاثیری بر دیگری ندارد :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
<?php class myobj { var $a; function start(){ echo "start<br/>"; } function get_a(){ return $this -> a; } function set_a($g){ $this -> a = $g; } } $one = new myobj(); $two = new myobj(); $one -> set_a(200); $two -> set_a(100); echo "two= ".$two -> a."<br/>"; echo "one = ".$one -> a."<br/>"; ?> |
فایل های پروژه این جلسه را میتوانید از باکس زیر دانلود کنید :
لینک دانلود | 0.1 مگابایت |
دمت گرم 😉
مرسی استاد.
خسته نباشید.
مرسی حسین جان عاااااالی بود
خیلی وقته ویدئوی آموزش قرار ندادید لطفا ویدئو اموزشی قرار بدید
درود
بحث php خیلی طولانی هست
اگه بوت استراپ رو بگید تموم شه بره قالش کنده شده خیلی بهتره
البته بنظر من
ولی در هر حال صلاح سایت مستر پروگرامر شفیعیان داند
درود کمال جان
بنده نمی خوام نخصصی به یه موضوع بپردازم چون در اینصورت مخاطبین سایتم محدود میشن و باید طیف متعددی از آموزش ها رو در سایت بزارم
البته بنده تاکیدی خاصی بر دوره بوت استرپ دارم ولی مرسی از پیشنهادت
بسیار عــــالـــی . خسته نباشی 🙂
سلام حسین جان
خسته نباشی وخدا قوت
ممنون بابت فیلم اموزشی
لطفا وقتی فیلم منتشر میکنید از طریق ایمیل اطلاع رسانی کنید
سلام
من وقت بزارم و آموزش ضبط کنم و رایگان منتشر کنم , تازه خبرتون هم بکنم !؟؟ 😀
مرسی سید جان
سلام حسین جان
بنده نمیگم رایگان فیلم اموزشی منتشر کنید پولی هم باشه مشکلی نیست چون خودم میدونم چقدر زمان میبره و…
سید جان شما میتونی از نرم افزار های فید خوان استفاده کنید تا به محز بروز شدن یک سایت بهت اطلاع بده – فایر فاکس هم فکر کنم چنین افزونه ای داشت
سلام خوشحال شدم دوره پیشرفته پی اچ پی گذاشتید ممنون
Hi Hossin would you like to continue HTML and CSS for us if you don’t care about that please tell us
thank you for teaching
hello
i try to record HTML and CSS training video
hi again i was downloaded your new lessen and i couldn’t opened with winRAR can you help us how do that please
thank you
hi
welcome to my site
you must use 7zip for extract lessen file
Thank you mate
سلام حسین جان ممنون واسه آموزشات.
می خواستم بپرسم php پیشرفتش کلا چند جلسه دیگه میشه؟
با تشکر
سلام و تشکر
هنوز سر فصل ها رو آماده نکردم ولی مباحثی مثل امنیت – کار با پایگاه داده − کار با xml و … را در این دوره قرار دادم که فکر میکنم جمعا ۲۰ جلسه ای بشه و بعد از دوره پیشرفته دوره پروژه محور را ضبط میکنم که در اون دروه فقط بر روی پروژه های کار خواهیم کرد و خلاصه یه خروجی مناسب تحویلتان میدم , البته ریتم انتشار آموزش ها بستگی به استقابل و نظرات شما داره
موفق باشید
سلام این نظر رو گذاشتم که بگم ما همیشه هستیم و حمایتت میکنیم حسین جان 🙂
سلام
تشکر از شما و همه ی دوستان عزیز که با ارسال نظر آموزش ها رو حمایت میکنید
عالی بود ممنون
مرسی از حمایتت شهرام جان
Hi Hussin can you put new the lessen for us plz we still waiting for you thank you
Hi
video recording training needs a lot of time
Please be patient
سلام.
اول خواستم واسه فیلم های که منتشر میکنی تشکر کنم
دوتا سوال هم دارم
1 واسه ضبط ویدیو ها از چه برنامه ای استفاده میکنی؟
2واسه درست کردن این قسمت اول فیلم ها از چه برنامه ایی استفاده میکنی
با تشکر
D:
سلام
برای ضبط ویدئو ها از TechSmith.C.Studio.v7 استفاده میکنم – البته دارم به سیستم عامل ابونتو سوئیچ میکنم و از record my desktop استفاده خواهم کرد.
قسمت اول فیلم را یکی از دوستانم که با نام ali tna یا pc.pro فعالیت دارند زحمتش را کشیدند و اگر این کامنت رو میخونن همینجا بازم ازشون تشکر میکنم
Hi can you put a new movie for us please i’m still waiting for you
thank you
Hi
the next day i record new video
hi danger if you want record movie on your desktop you can use ezvid is the best application in the world
مرسی از شما , من ترجمه میکنم 😀
در جواب به کاربری danger که برنامه ی ضبط فیلم از دسکتاپ نیاز داشتند برنامه ی ezvid را معرفی کردند
مرسی از شما – thank you mate
Hi hussin how can i change my cover photo plz tell me
thank you
Hi friends
you must go to chehrak.com and register your email
next…
upload your image for cover
and finish
Hi hussin I have a question if it’s impossible for you plz tell me the answer.
The question is what language style the programmer people using for creating application and software an example Dropbox, Facebook, android applications and IOS application or anything else like that. Please tell me the answer its interesting for me I would like to learn that. Thank you nice attention
hi Esmat
Java language, one of the most powerful programming languages in the world.
the language is very flexible and special feature is the possibility that in many of the platform .
However, many services, a combination of several languages are used .
programs for writing IOS use of Xcod .
and each one ‘s expertise needed
you ought to see in what you desire to work for you and your decision.
سلام
میگم یه کلاس زبان انگلیسی هم بزارید بد نیست با خوندن نظرات کلی انگلیسی یاد گرفتم ممنون
how about the second question
What ?
Thank you for your nice answer it
Can you teach us the Java style for creating application and software and if you don’t want do that please introduce a website to learn that. I’m still waiting for your answer thank you
i want publish java training the future
but java not nice language for beginning programming
if you want be professional programming must start with C++ language
but every way video and website not nice training for programming learn
you can read book for full learn select
Thank you
Do you know the learning from the books is very boring for me and also the books are not available for me anyway and the learning from the books is very old way for this generation. The way is learning from web, YouTube and especially from you. The creating application and software is very inserting and important for me and for some members who wants to be programmer in future. If you like to teach us please continue the Java not just for me, even for your members
OK
i try to record JAVA video
maybe take a lot time
ممنون مهندس جان ..
خیلی ساده و روان … استفاده کردیم.
منتظر ادامه اش هستیم
خدا قوت
سلام
داداش کارت درسته.
احیانا بچه خزانه که نیستی؟
سلام و تشکر
خیر بچه اصفهانم عزیز
سلام . امروز کارشما را دیدم خیلی خوب است موفق باشید
سلام
مرسی تشکر ، شما لطف دارین
با سلام
ممنون از زحمات شما . خوب و کاربردی هست . لطفا ادامه بدین
سلام
مرسی از حمایتتان ، چشم حتما
سلام
علت استفاده از کد زیر چیست ؟
return $this -> a;
ممنون
سلام
لطفا سوالات و مشکلات خود را در انجمن مطرح کنید
سلام آقای برنامه نویس. من ویدیو اول بوت استرپ را دیدم دیگه ویدیو قسمت های دیگه را نمی توانم ببینم سه وچهارر بار هم دانلود کردم نشد خواهش می کنم کمک کنید.
سلام
دوستان دانلود کردند مشکلی نداشته !
مشکلتون چی بوده ؟ نیمه کاره دانلود میشه یا فایل خرابه ؟
با سلام و تشکر از آموزشای خوبتون
فایل رو بعد از اینکه دانلود میکنم موقع اکسترکت ارور میده اگه بررسی کنید ممنون میشم.هم گام اول و هم گام دوم شی گرایی هردو همین مشکل رو داره
سلام
شما با برنامه 7zip باید این فایل رو اکسترکت کنید
با برنامه 7zip تست کنید اگر مشکل برقرار بود اطلاعات بدید مجدد آپ میکنم
سلام استاد …
من یه مدتی هست که با سایت شما آشنا شدم و دارم از ویدیو های شما استفاده میکنم … من همشهری شمام و برنامه نویس … با این تفاوت که من دات نت کار میکنم و البته در ابتدای راه PHP … سایتت و نوع کار و بیانت خیلی پسندیدم واقعا دست مریزاد … شما یک متغییری به نام this$ تعریف کردی! این متغییر که کلمه کلیدی نیست؟! یعنی برای یک متغییر دیگه من میتونم برای get و set کردنش از this2 استفاده کنم؟! … در ضمن در دات نت و شی گرایش get و set میکنیم که کاری به متغییر اصلی نداشته باشیم ولی اینجا در php خلاف اینه و کلا هر رفتاری میشه داشت که برام خیلی جالب بود.
سلام
this یک کلمه کلیدی است و از قبل رزو شده اما this2 مشکلی نداره
پایدار باشید
سلام
من میخوام یک فرم سه مرحله ایی ارسال ویدیو بصورت شی گرایی بنویسم .میخواستم بدونم که:
1- session فرم ها بصورت شی گرایی چطوری به فایل php ارسال میشه؟؟
2-ارسال مقادیر فرم بصورت شی گرایی چطوری به فایل php ارسال میشه و همچنین عمل insert & select بصورت شی گرایی انجام میگیره؟؟اگه پاسخ بدید ممنون میشم.
آقای شفیعیان من در انجمن یک سوال در مورد شی گرایی پرسیدم اگه جواب بدید ممنوم میشم.
آقای شفیعیان شما گفتید که سوالات خودتون رو در انجمن بپرسید.من هم یه اشکال در مورد شی گرایی داشتم و اونو پرسیدم اما جواب نمیدید.
میشه از تفاوت بین php و asp.net m,vc بگی؟
بحثش مفصله 😉
با سلام و احترام.
لینکهای زیر مشکل دارند لطفا اصلاح نمایید
و در صورت امکان به بنده خبر دهید
بهه دلیل شاغل بودن بنده دیر به دیر به سایت خوب شما سر می زنم اگر برای شما مقدور می باشد لینک های دانلود آموزش مقدماتی تا پیشرفته پی اچ پی رو برای من ارسال نمایید
با سپاس فراوان از شما
لینک های خراب
—————————————————————-
http://mrprogrammer.net/category/programming/php/php-learn/page/2/
http://mrprogrammer.net/category/programming/php/php-learn/page/3/
http://mrprogrammer.net/category/programming/php/php-learn/page/4/
http://mrprogrammer.net/category/programming/php/php-learn/page/5/
http://mrprogrammer.net/category/programming/php/php-learn/page/6/
————————————————————————————
ایمیل من
payam.te@gmail.com
با سلام و خسته نباشید
ممنون از آموزش های شما
آموزش های مقدماتی پی اچ پی دیگه نمیزارید؟
با سلام
بدلیل سبک خاص آموزش، درعین بیان تخصصی مطالب، از روش انتقال مفاهیم خصوصاً به افرادی که تازه برنامه نویسی را شروع کرده اند استفاده کرده اید . بنده غالب آموزش های موجود را بازبینی ومطالعه کرده ام وبه روش ونوع بیان وانتقال مطالب جنابعالی، نمره خیلی خوب می دهم فلذا ضمن تبریک به جنابعالی ، آرزوی موفقیت وسلامتی دارم.
لطف عالی مستدام!
با سلام
تشکر بابت آموزشهای خیلی خیلی خوبتون
لینک دوره مقدماتی php مشکل داره 🙁
موفق باشید
با سلام خدمت استاد عزیز شیفیان من یه 10 ماهی میشه که این سایتو میشناسم و همیشه سر میزنم دو ماه نتم قطع بود حالا ک اومدم دیدم ک دوره مقدماتی phpحذف شده میشه دوره مقدماتی رو بزارید ممنون با سپاس ضمن عرض تبریک سال نو خدمت دوستان عزیز.
درود
دوره مقدماتی php بزودی مجددا ضبط و منتشر خواهد شد.
با سلام و خسته نباشید … پس منتظر دوره ی مقدماتی php میمونیم 🙂 😉 … فوق العاده این .. خدا قوت ..
سلام.من میخام با ایکلیپس یه کتاب بسازم.اما چیزی از برنامه نویسی نمیدونم و فقط با کتابسازها کتاب میخامایکلیپس بدونم باید از کجا شروع کنم؟ایا نوشتن کتاب با ایکلیپس کار سختیه؟
سلام … من تو همین مطلب برای پیشنیاز “php” مقدماتی رو گفته بودید ک لازمه ولی لینکش خالی بود
آیا آموزشش رو از سایت حذف کردید یا قراره ک آپلود کنید ؟
درود
آپلود خواهد شد
سلام شدیدا خواهش میکنم خواهش میکنم خواهش میکنم دوره php رو حتما بزارید قبلا بودش ولی الان هیچی نیست خواهش میکنم رسیدگی کنین و دوره php رو بزارید دوره های عالیتون رو تمام کنید
با سلام
اقای برنامه نویس فیلم های php که قبلا در سایت بود حذف شدند
من خیلی به اون ها الان نیاز دارم
اگه امکان هست لطفا ان ها را بزارید
درود
دوره آموزش php انشالله بعد از تابستان تو سایت قرار میگیره
سلام .
آقای مهندس
فیلم یک و دو خرابه. دو بار دانلود کردم
مشکل داره
نه درسته با 7zip باز کردم.
آموزش عاتون عالیه.
ممنون
با سلام میشه زحمت بکشید دوره مقدماتی PHP رو لینکش رو بزارید در بالای صفحه لینکش به جای دیگه ای میره. با سپاس
سلام حسین جان، واقعا از زحمتایی که میکشی ممنونم. هم سایتت خیلی عالیه هم آموزشهات کامل و بدون نقصه، حرف نداره. فقط حسین میشه بی زحمت دوره مقدماتی php رو هم بذاری؟ ممنون میشم
سلام
اره دوره مقدماتی php رو مد نظر دارم بزودی شروع کنم
سلام
خسته نباشید
بنده چند سال پیش از سایت شما استفاده میکردم
آموزش های php کامل دانلود کرده بودم ولی الان بنا به دلایلی حذف شده اند کاملا
خواستم باز اقدام به دانلود کنم ولی 3تا بیشتر ندارید از آموزش های قبلی لطفا اگر دارید منتشر کنید.
ممنون
سلام
این دوره مجددا ضبط و آموزش هاش منتشر خواهد شد و دوره قبلی در دسترس نیست
مهندس سلام و خدا قوت
آموزشهای مقدماتی php رو من داشتم قبلا ، بیست و هفت جلسه بود . جلسه آخر مربوط می شد به کار با فایل ها ، جلسات مقدماتی از این بیست و هفت جلسه بیشتره یا همون هاست ؟
سلام
این دوره مجزا از اون هست
حسین جان کارت درسته اگه بتونی این دوره رو کامل کنی خیلی خیلی خوبه حتی اگه کلش رو واسه فروش بذاری خیلی خوب میشه بالاخره هم زحمت میکشی هم وقت میذاری ( میذاری با همین ذ هستش؟) 🙂 آقا موفق باشی ادامه بده چون کارت درسته
سلام
مرس عزیز ، چشم حتما
تشکر زنده باشی
سلام
ممنون به خاطر زحماتی که کشیده اید و اینکه انقدر راحت اطلاعاتتونو در اختیار دیگران قرار داده اید.
راستش من تازه با آموزش های شما آشنا شدم و به شدت دنبال آموزش php هستم شما در اینجا دوره ی پیشرفته را قرار داده اید، اگه امکانش هست میخوام هرچه زودتر دوره ی مقدماتی آموزش هاتونو داشته باشم. ممنون میشم اگه نحوه ی دسترسی به این دوره هارو بهم بگید.
با تشکر
سلام
دوره مقدماتی بزودی منتشر میشه
اچ تی ام ال نمیاد
سلام استاد خیلی زحمت کشیدی دوره ها مثل همیشه عالی و پر از نکته امکانش هست ی دوره آموزش ajax هم بذارید
سلام
مرسی
این دوره هم در لیست دوره های آینده قرار میگیره
راستی دوره jquery کی شروع میشه من هر دوره ای که میبینم بازم دوره های شما نمیشه
لطف دارین
این دوره تو لیست دوره های آموزشی سایت هست ، منتها ممکنه کمی با تاخیر منتشر بشه
سلام استاد
من دوره مقدماتی phpرو میخوامولی روی لینک که میزنم نمیاره؟؟
میشه کمکم کنید؟
خسته نباشید آقای شفیعیان
واقعا مطالبتون عالیه
فقط پی اچ پی مقدماتی رو منتشر کنید 🙁
ممنونم