آموزش زبان برنامه نویسی PHP

 


پی اچ پی از زبان‌های پردازه‌نویسی تحت وب است. ساختار این زبان بسیار شبیه زبان سی (C) و زبان برنامه‌نویسی پرل (Perl) می‌باشد. شکل پذیری فوق العاده آن و نیز همگونی با اغلب بانک‌های اطلاعاتی از قبیل MySql قدرت آن را افزایش داده است. مشهورترین نرم‌افزارهای(بسته های) ایجاد شده با پی‌اچ‌پی عبارت‌اند از phpBB ،SMF ،Mambo ،Joomla ،PHPNuke ،mybb و مدیاویکی (MediaWiki) (که این وب‌گاه با آن طراحی شده). پی‌اچ‌پی می‌تواند جایگزینی برای زبان‌های ASP.NET و JSP و Perl باشد. همچنین یکی از بهترین نمونه‌های برنامه‌نویسی php در سطح وسیع سایت فیس‌بوک است. سادگی استفاده از پی‌اچ‌پی و شباهت آن به زبان سی و پرل (و از نسخه ۵ آن به جاوا) باعث شده که اغلب برنامه نویسان با تجربه در کوتاه‌ترین زمان ممکن برنامه‌های کاملی را ایجاد کنند.

به جای صرف هزینه های چند صد هزارتومانی برای یادگیری زبان PHP ، تنها با 20% هزینه ی کلاس های حضوری، دوره ی کامل و حرفه ای آموزش زبان PHP را با بهترین کیفیت برای شما عزیزان برگزار می کنیم . با مشاهده ی سرفصل های این دوره جامع بودن آن را درک خواهید کرد . در انتهای دوره با آموزش انجام 3 پروژه ی کاربردی مهارت های خودتون رو به صورت کاملا عملی استفاده خواهید کرد .

 

سرفصل های دوره جامع آموزش زبان PHP :
فصل 1 : مقدمه ، پیشنیازها و آماده سازی محیط کار

    در مورد مدرس
    در مورد زبان اسکریپتی PHP
    مقایسه ی زبان های برنامه نویسی و زبان های نمادگذاری
    PHP و چرایی انتخاب این زبان
    زبان های Server-Side در مقابل Client-Side
    تاریخچه ی PHP
    معرفی کلی دوره و هدف نهایی آن
    پیشنیازها ی دوره
    آماده سازی محیط برنامه نویسی
    سیستم عامل
    مرورگر
    راه اندازی وب سرور محلی (Local)
    مجموعه ی AMP : Apache , MySQL , PHP در سیستم عامل های مختلف
    نصب WAMP و پیکربندی آن در ویندوز
    یافتن فولدر ریشه (root) وب سرور محلی و مدیریت فایل های برنامه ها
    پیکربندی PHP و MySQL
    تست وب سرور محلی و دیدن اطلاعات و ویژگی های PHP  نصب شده
    انتخاب ویرایشگر و محیط توسعه ی برنامه های PHP (IDE)
    در مورد PhpStorm و Notepad++ : دانلود  و نصب آن ها
    آموزش نکات و تکنیک های مهم ویرایشگر PhpStorm
    تنظیمات PhpStorm
    ایجاد و ویرایش پروژه
    کلیدهای میانبر مهم در PhpStorm
    ضبط ماکرو ها و استفاده از آنها برای کدنویسی سریعتر
    تکنیک هایی برای افزایش سرعت و دقت در کدنویسی (emmet plugin)
    موارد متفرقه در مورد PhpStorm
    تمرین

فصل 2 : قرارداد ها، شروع کدنویسی حساب شده و مفاهیم پایه !

    فرمت فایل های زبان PHP
    آشنایی با کدگذاری فایل ها : Utf-8 در مقابل ASCII
    مفاهیم پایه
    صفحات وب ایستا (Static) در مقابل صفحات وب پویا (Dynamic)
    دو جزء اساسی تشکیل دهنده ی یک برنامه : داده ها و کدها
    روند پردازش درخواست ها از مرورگر تا وب سرور و برعکس
    تگ های زبان PHP : جا دادن کدهای PHP در صفحه ی وب
    آشنایی با توابع echo  و print برای چاپ داده ها
    توضیحات (Comments) در زبان PHP
    تابع rand و استفاده از آن برای تولید اعداد تصافی در طول برگذاری این دوره
    کدنویسی استاندارد و قراردادهای این دوره ی آموزشی
    استاندارد تعین نام ها
    استاندارد تعین کامنت ها
    استاندارد تعین فرمت ها
    رعایت نظم و فرورفتگی ها (Indentation) در کدنویسی
    شیوه ی پوشه بندی و ساختار فایل های این دوره
    فایل های کمکی مورد استفاده در این دوره
    پوشه ی common
    فایل styles.css
     فایل common.js
    فایل common.php
    تمرین

فصل 3 : انواع مختلف داده ها و متغیرها در PHP

    داده های دنیای پیرامون ما
    متغیر در زبان های برنامه نویسی چیست ؟
    نحوه ی تعریف متغیرها : صریح در مقابل ضمنی
    قواعد نامگذاری صحیح متغیرها
    مثال هایی از نامگذاری های صحیح و غلط برای متغیرها
    انواع مختلف متغیرهای PHP
    متغیرهای رشته ای (String)
    متغیرهای عددی صحیح (Integer)
    متعیرهای عددی اعشاری (Float)
    متغیرهای بولین (Boolean)
    متغیرهای آرایه ای (Array)
    نوع های خاص : NULL و empty
    متغیرهای ارجاعی (Pointer)
    تخریب و از بین بردن متغیر ها با دستور unset
    تشخیص نوع متغیرها با تابع gettype()
    تغیر نوع متغیر با تابع settype()
    توابع چک کردن نوع متغیرها
    is_int
    is_string
    is_bool
    is_float
    is_array
    is_numeric
    is_null
    is_empty

    تبدیل نوع متغیرها (Type Casting)
    ثابت ها در زبان PHP
    ثابت های مهم و کاربردی از پیش تعریف شده در PHP
    کار با متغیرهای رشته ای
    تفاوت استفاده از تک کوتیشن و دابل کوتیشن در اطراف رشته ها ( ‘ و  “)
    استفاده ی ترکیبی از متغیرها و داده ها در کدهای PHP
    تمرین

فصل 4 : عملگرها در PHP : انجام اعمال مختلف بر روی داده ها و متغیرها

    عملگر چیست ؟
    انواع عملگرها در زبان PHP
    عملگرهای ریاضی و محاسباتی
    عملگرهای رشته
    عملگرهای مقایسه ای
    عملگرهای منطقی
    عملگرهای بیتی
    عملگرهای انتساب
    عملگرهای خاص : ++ و –
    بررسی عملگرها با مثال های مختلف
    اولیت اعمال عملگرهای مختلف
    تمرین

فصل 5 : ساختارهای کنترلی : شرط ها و عبارت های منطقی

    مقدمه و آشنایی با عبارت های شرطی در زبان های برنامه نویسی
    بلاک بندی کد با استفاده از آکولادها
    عبارت شرطی if
    عبارت های else  و else if
    عبارت شرطی switch
    نقش دستور break در ساختار switch
    عبارت و عملگر شرطی ?
    ارائه ی مثال های مختلف برای درک عمقی از نحوه ی استفاده از شرط ها
    مینی پروژه 1 : محدود کردن نمایش محتوا بر اساس سن و جنسیت کاربر
    مینی پروژه 2 : نوشتن یک ماشین حساب با دستورات شرطی مختلف در زبان PHP
    تمرین

فصل 6 : ساختارهای کنترلی : حلقه ها و آرایه ها

    مقدمه و آشنایی با حلقه ها و آرایه ها در زبان های برنامه نویسی
    آرایه ها و متغیرهای مجموعه ای
    آرایه های عددی در مقابل آرایه های Associative
    مفهوم iteration در حلقه ها
    ساختار حلقه for و بخش های مختلف آن
    ساختار حلقه foreach و کاربرد آن
    تفاوت حلقه های for و foreach
    ساختار حلقه while و نکات مهم در نحوه ی استفاده از آن
    ساختار حلقه do...while و تفاوت آن به حلقه ی while
    استفاده از حلقه های تو در تو برای پردازش داده ها و آرایه های چند بعدی
    کاربرد دستورات Continue و Break
    مینی پروژه : تعیین جایگاه نشستن تماشاگران با توجه به جنسیت آنها !
    تمرین

فصل 7 : تعامل Html ، PHP  و Javascript : با Ajax حرفه ای شوید !

    در این فصل مفاهیم در قالب ساخت رابط کاربری یک وبلاگ تدریس می شوند .
    لود و استفاده از فایل های PHP در همدیگر
    تشریح توابع include و include_once
    تشریح توابع require و require_once
    مروری بر زبان نماد گذاری HTML
    استفاده از تگ های HTML برای نمایش بهتر خروجی کدهای PHP
    استفاده از تگ های فرمت بندی متن در خروجی های PHP
    ایجاد خروجی های پویا و متغیر
    استفاده از حلقه های PHP و تگ table برای نمایش خروجی به صورت جدولی
    نمایش شرطی ویژگی ها و تگ های HTML و کلاس های CSS
    مروری بر زبان جاوااسکریپت
    تشریح کاربردهای زبان جاوااسکریپت
    نحوه ی استفاده از کدهای جاوا اسکریپت در صفحات PHP
    نحوه ی انتقال و استفاده از داده ها و مقادیر php در کدهای جاوااسکریپت
    جی کوئری (jQuery) و سهولت در نوشتن کدهای جاوااسکریپت !
    بررسی اعتبار داده های ورودی کاربر توسط جاوااسکریپت (جی کوئری)
    نمایش پیام هشدار پیش از انجام عملیات حساس،  با استفاده از جاوااسکریپت
    تکنولوژی Ajax چیست ؟
    مزایا و معایب استفاده از Ajax
    موارد استفاده ی صحیح و اشتباه از تکنولوژی Ajax
    آموزش به کارگیری Ajax به همراه PHP با استفاده از کتابخانه ی جی کوئری
    نمایش تصویر و یا متن لودینگ در هنگام ارسال درخواست Ajax
    مینی پروژه : جستجو در لیست اسامی و پیشنهاد نتایج در هنگام تایپ با استفاده از Ajax
    تمرین

فصل 8 : کار با فرم ها و داده های ورودی کاربران

    توضیحی در مورد ورودی ها و خروجی ها در زبان های برنامه نویسی
    دریافت ورودی ها در زبان PHP
    تشریح کاربرد و عملکرد فرم ها در صفحات وب
    تفاوت دو متد Post و Get در ارسال داده ها به سمت سرور
    ساختار ارسال داده ها با متد Get در Url ها (QueryString Structure)
    ساختار یک فرم در زبان Html
    اجزاء مختلف تشکیل دهنده ی فرم های Html
    تگ form
    فیلدهای متنی (Text)
    فیلدهای ناحیه ی متنی (Textarea)
    فیلد های انتخاب گزینه (radio button , checkbox)
    فیلد های لیستی (Select)
    فیلد آپلود فایل (File)
    فیلدهای مخفی (Hidden)
    دکمه ها (Button , Submit)
    لیبل ها (Label)
    دریافت اطلاعات ارسال شده از فرم ها در PHP
    مینی پروژه : ساخت یک فرم ثبت نام برای ذخیره سازی اطلاعات افراد و ارسال داده ها به سمت PHP
    تمرین

فصل 9 : آرایه های سوپرگلوبال PHP و کاربرد آنها

    منظور از آرایه های SuperGlobal چیست ؟
    انواع آرایه ها فوق سراسری و کاربرد آنها در زبان PHP
    آرایه ی $_GET
    آرایه ی $_POST
    آرایه ی $_REQUEST
    آرایه ی $_FILE
    آرایه ی $_SERVER
    نحوه ی دریافت و پردازش اطلاعات ارسال شده از طریق فرم ها در زبان PHP
    اعتبارسنجی ورودی های کاربر و رفع خطرات احتمالی از ورودی های خطرناک در PHP
    جلوگیری از ارسال مجدد فرم ها و مشکل ذخیره سازی و پردازش مجدد داده ها
    مینی پروژه : نمایش اطلاعات ارسال شده از طریق فرم ثبت نام با ظاهری مرتب
    تمرین

فصل 10 : توابع : تعریف توابع دلخواه توسط برنامه نویس

    تابع چیست و چرا باید از توابع استفاده کرد ؟
    ساختار نوشتاری توابع PHP
    قواعد نامگذاری توابع
    پارامترها یا ورودی های توابع PHP
    مقدار بازگشتی (خروجی) توابع
    مثالی که مزایای استفاده از توابع را نشان می دهد .
    نوع پارامتر های توابع PHP (مقداری و ارجاعی)
    محدوده اعتبار متغیرها (Scope) و متغیرهای سراسری (global variables)
    مقداردهی پیشفرض برای پارامترهای تابع
    تعریف تابع با تعداد متغیری از پارامترهای ورودی
    تولید مقادیر چندگانه توسط یک تابع
    نحوه ی دسترسی به متغیرهای سراسری
    چک کردن وجود یا عدم وجود تابع با نام خاص
    مفهوم توابع بازگشتی و مثالی کاربردی از آن
    مینی پروژه : شبیه سازی خط تولید خودرو در فازهای مختلف کارخانه
    تمرین

فصل 11 : توابع : توابع از پیش تعریف شده در PHP

    توابع از پیش تعریف شده ی PHP و مزایای استفاده از آنها
    نحوه ی جستجوی توابع مختلف PHP و یافتن توابع مورد نیاز شما
    کار با تاریخ و زمان :
    دریافت و فرمت بندی تاریخ کنونی سرور  و تبدیل timestamp به تاریخ
    دریافت زمان و ساعت کنونی سرور به شکل timestamp
    دریافت زمان کنونی به میکروثانیه
    ساخت یک شئ از کلاس تاریخ
     ساخت یک شئ تاریخ با فرمت دلخواه
    دریافت منطقه ی زمانی
    تنظیم کردن منطقه ی زمانی
    افزودن یک مقدار (ساعت،روز،ماه ...) به یک تاریخ
    کم کردن و تفریق یک بازه ی زمانی از یک تاریخ
    دریافت اختلاف زمانی بین دو تاریخ مختلف
    انجام تغیرات در تاریخ
    نمایش یک تاریخ با فرمت خاص
    دریافت اجزاء مختلف تاریخ (روز، ماه، سال، ثانیه، دقیقه، ساعت و ...)
    دریافت زمان طلوع خورشید
    دریافت زمان غروب خورشید
    تنظیم ساعت در یک تاریخ
    دریافت برچسب زمانی (timestamp) یک تاریخ
    تبدیل یک رشته ی تاریخ  به timestamp
    دریافت اطلاعات و اجزاء مختلف تاریخ کنونی سرور
    دریافت اجزاء مختلف تاریخ (ساعت، روز، ماه و ...)  به صورت عدد صحیح
    بهره گیری و استفاده از تاریخ فارسی با کتابخانه ی jdf
    مینی پروژه : نمایش تاریخ به صورت زمان گذشته شده تا کنون (مثال : 2 ماه و 3 روز پیش)
    تمرین
    کار با رشته ها :
    دریافت طول یک رشته
    افزودن اسلش ها به رشته و دلیل انجام اینکار
    تبدیل کد حروف به کاراکتر و برعکس
    شکستن یک رشته به تکه های کوچکتر با سایز مشخص
    نمایش اطلاعات در مورد حرف های رشته ی متنی
    محاسبه ی checksum  از رشته ی ورودی
    crypt : تابعی برای در هم ریزی (hash) رشته
    md5,md5_file : توابعی برای در هم ریزی (hash) رشته و فایل
    sha1,sha1_file : توابعی برای در هم ریزی (hash) رشته و فایل
    جداسازی بخش های یک رشته بر اساس یک رشته ی جداکننده
    چسباندن تمام اعضای یک آرایه و تبدیل آنها به یک رشته
    تبدیل کاراکترهای html به کاراکترهای اجرایی
    برعکس تابع html_entity_decode
    تبدیل کاراکترهای خاص html به کاراکترهای اجرایی
    برعکس تابع htmlspecialchars_decode
    کوچک کردن اولین حرف رشته
    حذف فاصله ها (یا حروف خاص) از اطراف رشته ها
    تبدیل کاراکترهای خط جدید به تگ br در html
    تجزیه کردن رشته به متغیرها
    تجزیه کردن یک url و دریافت اجزای آن
    چاپ یک رشته به صورت فرمت بندی شده
    محاسبه ی میزان شباهت بین دو رشته
    پر کردن یک رشته تا طول خاص با رشته ای دیگر
    جایگزین کردن یک رشته ی دلخواه با بخشی از رشته
    تکرار یک رشته به تعداد دلخواه
    جا به جا کردن حروف رشته به صورت تصادفی
    شکستن یه رشته به رشته های کوچکتر و قرار دادن در آرایه
    دریافت اطلاعات مربوط به تعداد تکرار کلمات در رشته
    یافتن اولین رخداد یک رشته در رشته ی بزرگتر
    یافتن موقعیت رخداد یک رشته در رشته ی بزرگتر
    مقایسه ی بین دو رشته
    تهی کردن رشته از تگ ها html و php
    دریافت تعداد تکرار یک زیررشته در رشته ی بزرگتر
    کوچک و بزرگ کردن حروف رشته
    دریافت یک زیر رشته از رشته ی بزرگتر
    احاطه کردن رشته با رشته ای دیگر در تکه هایی با اندازه ی مشخص
    فشرده سازی و کاهش سایز رشته ها
    مینی پروژه : ایجاد یک ویرایشگر متن php به کمک Ajax
    تمرین
    کار با آرایه ها :
    ساخت یک آرایه
    شمارش تعداد عناصر آرایه
    چک کردن وجود یک کلید در آرایه
    چک کردن حضور یک مقدار در آرایه
    دریافت همه یا بخشی از کلید های یک آرایه
    دریافت همه ی مقادیر موجود در آرایه
    تغیر حروف همه ی کلیدهای آرایه
    شکستن آرایه به چند بخش
    ایجاد یک آرایه با ترکیب دو آرایه ی کلیدها و مقادیر
    دریافت تعداد تکرار اعضای آرایه
    بدست آوردن تفاوت دو آرایه با همدیگر
    پر کردن بخشی از آرایه با مقادیر خاص
    فیلتر کردن اعضای ارایه با استفاده از یک تابع callback
    جابجایی کلیدها و مقادیر یک آرایه با همدیگر
    محاسبه ی اشتراک دو آرایه
     ادغام و اجتماع دو آرایه
    مخلوط کردن آرایه به صورت تصادفی
    توابع مرتب سازی آرایه ها
    پرکردن آرایه از مقادیر تا طول خاص
    اضافه کردن یک عنصر به انتهای آرایه
    برداشتن آخرین عضو آرایه
    محاسبه ی حاصل جمع و ضرب کل عناصر آرایه
    برداشتن یک یا چند عنصر از آرایه به صورت تصادفی و رندم
    جایگزینی عناصر آرایه با عناصر یک آرایه ی دیگر
    معکوس کردن آرایه
    جستجو در آرایه
    دریافت یک زیر آرایه از آرایه ی بزرگتر
    حذف عناصر تکراری از آرایه
    اعمال یک تابع برای اجرا بر روی تک تک عناصر آرایه
    پیمایش در عناصر آرایه
    استخراج متغیر از اعضای آرایه
    مینی پروژه : مدیریت و فیلتر کردن جدول مخاطبین تلفن
    تمرین
    کار با فایل ها :
    ایجاد فایل و فولدر در سرور
    دریافت اطلاعات کامل یک فایل
    دریافت نام فایل با استفاده از مسیر آن
    دریافت مسیر فولدر حاوی فایل از مسیر آن
    چک کردن وجود یا عدم وجود یک فایل
    چک کردن فایل/پوشه بودن یا نبودن یک فایل
    خواندن کل محتوای فایل و قراردادن آن در یک آرایه
    خواندن فایل و دریافت کل محتوای آن به عنوان یک رشته
    نوشتن یا اضافه کردن اطلاعات از یک رشته به درون فایل
    بازکردن و بستن یک فایل
    خواندن اطلاعات از درون یک فایل
    نوشتن اطلاعات در فایل
    دریافت سایز و فرمت (نوع) فایل
    آپلود و انتقال فایل بر روی سرور
    دریافت نام و اطلاعات فایل های موجود در پوشه ها
    اجبار به دانلود فایل با استفاده از php
    تغیر مجوزهای دسترسی به فایل
    کپی کردن یک فایل به آدرسی دیگر
    تغیر نام فایل بر روی سرور
    حذف فایل ها و پوشه ها
    دریافت اطلاعات فضای خالی وکل دیسک سرور
    مینی پروژه : اسکریپت فایل منیجر با قابلیت لیست کردن، ویرایش، حذف و اضافه کردن فایلها
    تمرین
    توابع متفرقه :
    تولید اعداد تصادفی
    توابع ریاضی و محاسباتی
    دریافت اطلاعات مربوط به میزان استفاده از رم
    دریافت اطلاعات میزان استفاده از CPU سرور

فصل 12  : اصول طراحی پایگاه داده (Database)

    پایگاه داده (Database) و سیستم مدیریت پایگاه داده (DBMS) چیست ؟
    استفاده از پایگاه داده در مقابل فایل ها
    انواع مختلف پایگاه های داده
    پایگاه های داده رابطه ای (Relational Database)
    مدل ER و مفاهیم پایه ی آن (Entity Relationship Model)
    تشریح انواع رابطه ها (1-1, n-1, n-m)
    تشریح مفاهیم دیتابیس (جدول، رابطه، کلیدها، فیلدها و رکوردها)
    ایندکس ها، کلیدهای اصلی و کلید های خارجی
    مفاهیم مهم در طراحی پایگاه داده
    اشتباهات رایج در طراحی پایگاه داده و تشریح مشکلات آن
    نرمال سازی جداول پایگاه داده
    مینی پروژه : طراحی پایگاه داده برای یک فروشگاه اینترنتی
    تمرین

فصل 13  : کار با پایگاه داده ی MySQL و چگونگی اتصال PHP به دیتابیس

    معرفی سیستم مدیریت پایگاه داده ی MySQL
    آشنایی با ابزار PhpMyAdmin و مدیریت جداول پایگاه داده به صورت دستی
    انجام 4 عمل اصلی پایگاه داده (CRUD) در محیط PhpMyAdmin
    انجین های ذخیره سازی جداول و معایب و مزایای هر کدام (InnoDB vs MyISAM)
    معرفی ویژگی های مختلف یک ستون از جداول پایگاه داده (نام، نوع، سایز، مقدار پیشفرض و ...)
    تشریح انواع داده ها (DataTypes) در SQL
    SQL : زبانی برای درخواست اطلاعات و انجام تغیرات در پایگاه داده (Query Language)
    آموزش زبان SQL : آموزش انجام اعمال اصلی در پایگاه های داده (CRUD) با زبان SQL
    ساخت جداول پایگاه داده (Create)
    شرح دادن جداول پایگاه داده و دیدن اطلاعات آنها (Describe)
    حذف جداول پایگاه داده (Drop)
    خواندن اطلاعات جداول پایگاه داده  (Select)
    درج و ویرایش مقادیر در جداول پایگاه داده (Insert & Update)
    حذف مقادیر از جداول پایگاه داده (Delete)
    ایجاد نسخه ی بکاپ از پایگاه داده و جداول آن
    ریستور کردن پایگاه داده از بکاپ های گرفته شده
    اجرای دستورات SQL در محیط PhpMyAdmin
    روش های اتصال به پایگاه داده از طریق PHP با رابط های mysqli, mysql و PDO
    آشنایی کلی با رابط MySQL
    تشریح نحوه اتصال به پایگاه داده از طریق رابط MySQL
    عدم استفاده از رابط MySQL به خاطر منسوخ شدن آن از ورژن 5.5 php به بعد
    آشنایی کلی با رابط MySQLi
    تشریح نحوه اتصال به پایگاه داده از طریق رابط MySQLi
    آشنایی کلی با رابط PDO
    تشریح نحوه اتصال به پایگاه داده از طریق رابط PDO
    اجرای کوئری های دلخواه بر روی دیتابیس از طریق PHP و رابط MySQLi
    مینی پروژه : ایجاد صفحه ای برای اجرای بیش از 20 کوئری مختلف SQL بر روی پایگاه داده با شیوه ای جالب
    تمرین

فصل 14  : Cookie ها و Session ها در PHP و تفاوت کاربرد آنها

    کوکی و سشن : تعریف مفاهیم و تشریح تفاوت های آن ها
    تشریح کاربرد های کوکی و موارد استفاده از آن
    توضیح در مورد آرایه ی $_COOKIE
    کار با کوکی ها در PHP
    ایجاد و تنظیم کوکی ها
    خواندن و استفاده از کوکی ها
    حذف و از بین بردن کوکی ها
    نحوه ی تعیین زمان انقضای کوکی ها
    مشاهده و مدیریت دستی کوکی ها در مرورگرهای مختلف
    تشریح کاربرد های سشن و موارد استفاده از آن
    توضیح در مورد آرایه ی $_SESSION
    کار با سشن ها در PHP
    ایجاد و تنظیم سشن ها
    خواندن و استفاده از سشن ها
    حذف و از بین بردن سشن ها
    هش کردن اطلاعات حساس (مثل رمزهای عبور) برای امنیت بیشتر
    مقایسه ی الگوریتم های مختلف هش کردن اطلاعات
    مینی پروژه 1 : نمایش تعداد بازدید کاربر از صفحات مختلف و نمایش کل بازدیدهای او
    مینی پروژه 2 : احراز هویت (Authentication) کاربران و پیاده سازی فرایند ورود و خروج با سشن ها
    تمرین

فصل 15  : اصول خطایابی و Debug کردن برنامه ها: مشکلات رایج و راه حل رفع آنها

    سطوح مختلف خطاها و پیام ها در زبان PHP
    انواع مختلف خطاها در زبان PHP
    خطاهای نوشتاری و تجزیه ای (Syntax Errors)
    خطاهای مهلک (Fatal Errors)
    خطاهای هشداری (Warning Errors)
    خطاهای اطلاعاتی (Notice Errors)
    تشریح و توضیح انواع خطاها با ارائه ی مثال های ریز
    روش اصولی رفع خطاهای مختلف در PHP
    خطاهای رایج و راه حل رفع آنها در زبان PHP
    مشکلات نوشتاری در زبان PHP
    مشکل نمایش سورس php در مرورگر
    مشکل عدم نمایش خروجی کدهای PHP (فعال سازی نمایش ارورها)
    مشکل در ورود پارامترهای مناسب برای توابع
    مشکل عدم امکان تعریف دوباره ی توابع تکراری
    مشکل عدم امکان دسترسی به ویژگی ها و متد های یک متغیر که Object نیست
    مشکل شروع شدن سشن در مکان دیگر
    اشتباه در استفاده از عملگر انتساب به جای عملگر تست برابری
    مشکل در نحوه ی استفاده از عملگرهای == و ===
    مشکلات موجود در کوئری های SQL
    مشکل ارسال چندباره Header و دلایل بروز آن
    مشکل نمایش کاراکترهای فارسی به شکل علامت سوال ؟؟؟؟؟؟؟ (در فایل ها و پایگاه داده)
    مینی پروژه : اشکال زدایی و رفع ده ها خطا در یک سیستم مدیریت محتوای محبوب (وردپرس)
    تمرین

فصل 16 : امنیت در PHP : شناسایی باگ های امنیتی و رفع آن ها

    چرا و چگونه برنامه هایی ایمن بنویسیم ؟
    شناخت انواع حملات و مشکلات امنیتی، پیشنیازی برای نوشتن برنامه های امن
    دلایل ایجاد ناامنی در برنامه های PHP و راه حل رفع انها
    قانون اول ! عدم اعتماد به داده ها کاربران
    مشکلات در پیکربندی وب سرور
    مشکلات ناشی از فعال بودن register_globals و نحوه ی غیر فعال سازی آن
    عدم تنظیم صحیح نحوه ی گزارش خطاها
    مشکلات موجود به دلیل عدم انتخاب انکودینگ استاندارد
    ساختار نامناسب برنامه برای لود کردن فایلها
    عدم استفاده از نام ها و مقادیر پیش فرض
    حذف فایل های نصب اسکریپت ها پس از اتمام مراحل نصب
    قابل پیشبینی بودن رفتار ، ساختار و کدهای شما و مشکلات آن
    غیرفعال سازی و یا استفاده ی صحیح از Powerful Commands ها در php
    انتخاب نوع و سایز مناسب برای ستون های جداول پایگاه داده
    پسوردهای ضعیف و مشکلات ناشی از آن
    خصوصیت های یک پسورد مطمئن و قوی
    مشکلات امنیتی مربوط به دیتابیس و تزریق SQL یا SQL Injection
    مشکلات ناشی از تزریق کد و داده های خطرناک (Cross-Site Scripting - XSS)
    مشکلات ناشی از دزیده شدن Session ها و Cookie ها
    حملات CSRF و راهکارهای مقابله با آن
    کهنه بودن ورژن نرم افزارها و اسکریپت ها
    استفاده از فریم ورک های معروف برای رفع بسیاری از نگرانی های امنیتی
    مشکلات موجود در هاست های اشتراکی، تهیه ی هاست از شرکت های معتبر و متخصص
    آماده ی حمله ی هکرها باشید ! چه مسائلی را باید همیشه رعایت کنم و به یاد داشته باشم ؟
    آشنایی بیشتر با الگوریتم های کدگذاری و Hash کردن

فصل 17 : شئ گرایی در PHP و اصول برنامه نویسی Object Oriented

    نگاهی به دنیای پیرامون ما
    مشکلات و محدودیت های برنامه نویسی Functional
    تشریح مفهوم شئ گرایی و مزیت های آن
    تاریخچه و ویژگی های برنامه نویسی OOP در زبان PHP
    اصول و مفاهیم برنامه نویسی شئ گرا :
    مفهوم ارث بری (Inheritance)
    مفهوم مخفی سازی (Encapsulation)
    مفهوم چند شکلی (Polymorphism)
    مفهوم انتزاع/تجرید (Abstraction)
    شناخت عناصر مهم در برنامه نویسی شئ گرا :
    طبقه بندی ها (Classes)
    ویژگی ها (Properties)
    عملیات و متد ها (Methods)
    اشیاء (Objects or Instances)
    ارائه مثال های کاربردی برای درک بهتر مفهوم شئ گرایی، کلاس های اشکال هندسی و افراد
    نحوه ی نامگذاری کلاس ها، ویژگی ها و متدها
    نحوه ی ایجاد یک کلاس در زبان PHP
    عناصر تشکیل دهنده ی یک کلاس (ویژگی ها و متدها)
    مفهوم کلمات کلیدی public  و private و protected در تعریف ویژگی ها و متدهای کلاس
    نحوه ی تعریف ویژگی های کلاس
    نحوه ی تعریف متد های (رفتارهای) کلاس
    نحوه ی ساختن نمونه ها (Instances) از یک کلاس تعریف شده : (کلمه کلیدی new)
    عملگر -> در PHP
    متد سازنده (Constructor) در برنامه نویسی شئ گرای PHP
    متد تخریب کننده (Destructor) در برنامه نویسی شئ گرای PHP
    مفهوم متدهای getter و setter در کلاس ها
    مفهوم عناصر استاتیک و کلمات کلیدی self و static در کلاس های PHP
    تشریح تفاوت بین $this و self
    نحوه ی ارث بری کلاس ها در زبان PHP (به ارث بردن ویژگی های کلاس فرزند از کلاس پدر)
    دسترسی به عناصر کلاس پدر با کلید parent
    Override کردن متدهای کلاس پدر
    کلیدهای const و final و دلایل استفاده از آنها
    توضیحات تکمیلی در مورد کاربرد های کیورد static
    افزودن قابلیت شمارش تعداد نمونه های ساخته شده از یک کلاس
    کپی کردن اشیاء با استفاده از clone
    عدم کپی شدن اشیاء با عملیات انتساب و رفتار این عملیات
    تشخیص کلاس یک شئ و نمونه ی ساخته شده با عملگر instanceof
    تعین نوع پارامترهای ورودی متد ها (type hinting)
    مقداردهی خصوصیت های خاص فرزندان یک کلاس در متد سازنده ی آن
    استفاده از متد سازنده ی کلاس پدر/والد در کلاس های فرزند
    توضیحات تکمیلی در مورد کیورد final
    جلوگیری از extend شدن یک کلاس با استفاده از کیورد final
    ثابت های جادویی برای دریافت نام کلاس، متد و فضای نام کنونی
    دریافت اطلاعات همه ی خصوصیات یک شئ و کلاس
    دریافت مشخصات همه ی متدهای یک شئ و کلاس
    آشنایی کلی با زبان UML و مدلسازی ساختار کلاس های یک سیستم
    کلاس های abstract در PHP و کاربرد آنها
    متدهای abstract و توضیح آن
    رابط ها (interfaces) و دلیل استفاده از آن ها
    آشنایی با مفهوم Object Iteration
    اصول و مفاهیم برنامه نویسی شئ گرا :
    مفهوم ارث بری (Inheritance)
    مفهوم مخفی سازی (Encapsulation)
    مفهوم چند شکلی (Polymorphism)
    مفهوم انتزاع/تجرید (Abstraction)
    Serialization : تبدیل اشیاء و متغیرهای مختلف به رشته و بازیابی آن ها
    کاربرد مهم تبدیل اشیاء به رشته و ذخیره سازی مستقیم آنها در فایل، سشن و دیتابیس
    دیدن کاربرد serialization در محبوبترین cms دنیا ، وردپرس
    دیدن تمام متدها و خصوصیت های mysqli و PDO و نحوه ی جستجو برای یادگیری کاربرد آنها
    طراحی ساختار کلاس های وسایل نقلیه
    مینی پروژه : طراحی و پیاده سازی ساختار کلاس بندی اشیاء هندسی مختلف و تشریح مفاهیم پیشرفته ی شی گرایی در بستر آن
    مینی پروژه : طراحی کلاس های وسایل نقلیه و تشریح مفاهیم شئ گرایی در روند پیاده سازی آن
    تمرین

فصل 18  : مباحث متفرقه، کاربردی و پیشرفته 

    تشریح بعضی مطالب تکمیلی و جامانده
    راه حل های رفع مشکل نمایش ؟؟؟؟؟ به جای حروف فارسی
    پاسخ به برخی از سوالات مطرح شده
    انجام serialization دلخواه با پیاده سازی رابط Serializable از پیش تعریف شده
    تشریح مشکل لود کردن فایل کلاس های PHP شما برای استفاده
    استفاده از تابع __autoload() برای لود کردن خودکار کلاس ها
    استثناها و مدیریت آن ها در PHP (Exeption Handling)
    تشریح مفهوم استثناها در PHP و دلایل استفاده از آن ها
    تعریف یک کلاس برای ایجاد یک نوع خطای (استثنای) دلخواه
    تشریح ساختار بلاک try...catch و دلایل و نحوه ی استفاده از آن
    معرفی بعضی از استثناهای پیش تعریف شده ی PHP
    عبارت های منظم و تطبیق الگوها (Regular Expressions & Pattern Matching)
    تشریح مفهوم الگوها (Patterns) و دلایل استفاده از آن ها
    معرفی یک وبسایت برای تست عبارت های منظم به صورت آنلاین
    جداکننده ها، کاراکتر کلاس ها، تکرارکننده ها و ...
    تشریح و نوشتن الگوی چندین داده ی خاص از جمله ایمیل، آدرس، و شماره تلفن
    استخراج داده های خاص از یک رشته و متن بزرگ
    توابع PHP برای کار با عبارت های منظم
    استخراج تمامی ایمیل ها از یک متن بزرگ
    استخراج تمام url ها از یک متن بزرگ
    استخراج تمام شماره تلفن ها از یک متن بزرگ
    اعتبارسنجی و پاکسازی داده ها با استفاده از عبارت های منظم
    توضیح کتابخانه ی CURL و آشنایی با آن
    فعال سازی ماژول curl در wamp
    دریافت محتوای صفحات وب با استفاده از URL آنها
    چند مثال جالب و کاربردی در استفاده از کتابخانه ی curl :
    دریافت تعداد لایک ها و share های یک url در شبکه های اجتماعی با استفاده از curl
    دریافت محتوا و سورس کد یک url با استفاده از کتابخانه ی curl
    دریافت کل لینک های درون یک صفحه ی وب از طریق کدهای php
    دریافت کل تصاویر درون صفحه ی وب با استفاده از curl
    ارسال ایمیل از طریق PHP
    استفاده از تابع پیشفرض mail در php
    استفاده از کتابخانه ی phpmailer
    توضیح کتابخانه ی GD و آشنایی با آن
    فعال سازی ماژول GD در wamp
    ایجاد و ویرایش تصاویر در PHP با استفاده از کتابخانه ی gd
    چند مثال جالب و کاربردی در استفاده از کتابخانه ی GD :
    ساخت یک عکس مستطیلی ساده و رنگبندی آن
    ایجاد یک تصویر از متن ها
    ایجاد یک تصویر و قرار دادن متن بر روی محیط یک دایره
    تغیر سایز و کوچک و بزرگ کردن تصویر با استفاده از کتابخانه gd
    برش یا Crop کردن تصویر با استفاده از GD
    توضیح در مورد کدهای امنیتی (Captcha) در فرم ها
    منطق و نحوه ی پیاده سازی و استفاده از کدهای امنیتی (CAPTCHA) در فرم ها
    یک مثال کاربردی از کدهای امنیتی در یک فرم html
    تشریح مفهوم وب سرویس و آشنایی با کاربردهای آن
    استفاده از خدمات دیگر سایت ها با بهره گیری از وب سرویس آن ها
    توضیح در مورد Soap و رابط اتصال به وب سرویس
    چند مثال کاربردی در مورد استفاده از وب سرویس
    دریافت آب و هوای یک شهر با استفاده از وب سرویس و کدهای php
    دریافت اطلاعات مربوط به یک کشور خاص با php
    دریافت اطلاعات مربوط یه مسابقات فوتبال با استفاده از وب سرویس آن
    استفاده از پنل های SMS و ارسال SMS از طریق PHP با بهره گیری از وب سرویس
    چند نمونه مثال کاربردی : ارسال SMS، دریافت اعتبار پنل SMS و ایجاد یک مخاطب و ...
    درگاه پرداخت بانکی و توضیح در مورد روش و منطق پیاده سازی آن ها
    توضیح و تشریح ایجاد کد درگاه پرداخت پارس پال
    توضیح در مورد انجام کارهای اتوماتیک پس از تائید پرداخت موفقیت آمیز کاربر
    توضیح و تشریح کد PHP درگاه پرداخت بانک ملت
    نمونه کد درگاه بانک ملت به همراه سند PDF راهنمای آن
    فریمورک های PHP و مدل MVC
    آشنایی با مدل MVC
    توضیح دلایل استفاده از مدل MVC
    تشریح مفاهیم Model, View و Controller در مدل MVC و وظایف هر بخش
    معرفی چند مورد از فریم ورک های MVC معروف PHP
    آشنایی با مفهوم فریم ورک
    تشریح مجموعه مزایای فریمورک ها برای استفاده در پروژه های PHP
    توضیح یک نمونه از روند اجرای کار در فریمورک های PHP
    آیا استفاده از فریمورک ها ضروری است ؟

فصل 19 :  پیاده سازی پروژه های جامع، کاربردی و عملی

    در این فصل با استفاده از آموخته های خود در طول دوره، از ابتدا تا انتها پروژه های عملی و کاملا واقعی را با هم پیاده سازی می نماییم . تمامی مراحل انجام پروژه شامل طراحی پایگاه داده، ایجاد پایگاه داده، ایجاد کدهای هسته ی پروژه، رعایت مسائل امنیتی و ... با زبانی ساده و کاملا روان توضیح داده می شوند . با انجام این 3 پروژه یک جمع بندی بسیار خوب از تمامی مباحث این دوره خواهید داشت و در عمل استفاده ی صحیح از آموخته های خود را خواهید دید . پس از انجام این پروژه ها به راحتی قادر خواهید بود پروژه های دیگر با موضوعات مختلف را نیز پیاده سازی نمایید .
    تشریح مراحل و گام های انجام یک پروژه ی واقعی
    پروژه های جامع Functional :

پروژه 1 : ایجاد یک سیستم پرسش و پاسخ (Ticketing System)

اهداف پروژه ی 1 :

    آشنایی با نحوه طراحی و ایجاد پایگاه داده برای این اسکریپت
    آشنایی با نحوه ی نمایش، ثبت، حذف و ویرایش یک موجودیت (محتوا - سوال/جواب ) در پایگاه داده
    آشنایی با نحوه ی پیاده سازی برنامه بر اساس پارامترها و ایجاد راحتی بیشتر در تغیرها بعدی
    آشنایی با نحوه ی پیاده سازی عملیات ورود و خروج کاربر (ادمین)
    آشنایی با نحوه ی پیاده سازی قابلیت جستجو برای سایت (فرم جستجو)
    آشنایی با منطق و نحوه ی صفحه بندی مطالب (سوالات) در برنامه های PHP
    آشنایی با نحوه ی مدیریت سیستم بر روی رابط کاربری اصلی و عدم استفاده از پنل مدیریت
    آشنایی با برخی ترفندهای امنیتی در پیاده سازی برنامه های PHP
    آشنایی با نحوه ی آگاه سازی کاربران از طریق ایمیل و SMS پس از رویدادی خاص

پروژه 2 : ایجاد یک وبسایت گالری و فروش تصاویر با امکان پرداخت آنلاین و خرید تصاویر

اهداف این پروژه :

    آشنایی با نحوه طراحی و ایجاد پایگاه داده برای این اسکریپت
    آشنایی با نحوه ی نمایش، ثبت، حذف و ویرایش موجودیت ها (کاربر، تصویر، سفارشات و ... ) در پایگاه داده
    آشنایی با نحوه ی پیاده سازی برنامه بر اساس پارامترها و ایجاد راحتی بیشتر در تغیرها بعدی
    آشنایی با نحوه ی پیاده سازی عملیات ورود و خروج کاربران موجود در پایگاه داده
    آشنایی با نحوه ی مدیریت سیستم در یک پنل جداگانه
    آشنایی با مفهوم سبد خرید و نحوه ی پیاده سازی آن
    آشنایی با محافت از فایل های فروشی و دانلود انها از طریق یک اسکریپت بررسی کننده ی خریدار !
    آشنایی با علامت گذاری بر روی تصاویر برای جلوگیری از دانلود تصاویر اصلی و نمایش دمو از آنها
    آشنایی با نحوه ی پیاده سازی قابلیت فراموشی رمز عبور و ریست کردن پسورد کاربر
    آشنایی با نحوه ی دسته بندی محتوا در وبسایت ها
    آشنایی با نحوه ی گزارش گیری از داده های موجود در پایگاه داده با کوئری ها SQL
    آشنایی با نحوه ی استفاده از درگاه پرداخت و انجام عملیات اتوماتیک پس از پرداخت موفقیت آمیز (شبیه سازی درگاه پرداخت)
    آشنایی با میزان پردازش کار ها در PHP و راه حل هایی برای نوشتن کدهایی بهینه تر از لحاظ منابع مصرفی
    آشنایی با مسائل موجود در هنگام پرداخت آنلاین و استفاده از سبد خرید (قفل سبد، مشکل کوکی به تنهایی و ...)
    انجام تمرین برای شما و تکمیل برخی قسمت های پروژه

    پروژه ی جامع شئ گرا :

پروژه 3 :  ایجاد سیستم مدیریت محتوا (وبلاگ) با برنامه نویسی OOP

قابلیت ها و امکانات این پروژه (وبلاگ - cms) :

    وجود یک کاربر ادمین برای مدیریت محتوای وبلاگ
    قابلیت ورود و خروج کاربر ادمین به وبلاگ
    وجود یک پنل مدیریت که فقط کاربر ادمین می تواند به آن دسترسی داشته باشد
    کارهایی که در پنل مدیریت می توان انجام داد عبارتند از :
    ارسال یک مطلب جدید در دسته بندی خاص
    مدیریت مطالب شامل حذف و ویرایش مطالب ارسال شده
    مدیریت دسته بندی های وبلاگ
    مدیریت نظرات مطرح شده برای مطالب
    قابلیت حذف، تائید کردن و عدم تائید دیدگاه های ارسالی
    قابلیت افزودن منوی جدید از طریق پنل مدیریت و نمایش آن در سایدبار وبلاگ
    قابلیت حذف و ویرایش منوهای سایت
    قابلیت مشخص کردن ترتیب نمایش منو ها در سایدبار
    قابلیت ویرایش و حذف منوها از طریق پنل مدیریت
    وجود صفحه ی تنظیمات وبلاگ در پنل مدیریت
    قابلیت تغیر و آپدیت کردن تنظیمات وبلاگ
    قابلیت هایی که در نمای ظاهری وبلاگ (CMS) وجود دارد :
    نمایش آخرین مطالب ارسالی در صفحه نخست وبلاگ
    قابلیت نمایش مطالب یک دسته بندی خاص
    قابلیت جستجو در مطالب وبلاگ با تطبیق دقیق عبارت جستجو شده
    قابلیت صفحه بندی مطالب وبلاگ (بخشی از آن به عنوان تمرین به شما محول شده)
    قابلیت نمایش منوهای جستجو و دسته بندی ها در سایدبار سایت
    قابلیت نمایش منوی های دلخواه ایجاد شده در پنل مدیریت بر اساس ترتیب آنها
    قابلیت نمایش مطلب در یک صفحه ی خاص و جداگانه (صفحه مطلب)
    قابلیت ارسال نظر و دیدگاه برای مطالب وبلاگ
    قابلیت لایک کردن نظرات بازدیدکننده ها
    هر کاربر فقط 1 بار می تواند به یک نظر رای(لایک) دهد .
    محدودیتی برای مدیر وبلاگ در لایک کردن نظرات وجود ندارد و به هر تعداد می تواند لایک کند
    امکان فعال کردن و غیرفعال کردن قابلیت لایک نظرات از طریق پنل مدیریت

فصل 20 : جمع بندی، ادامه کار و توصیه های مهم

    جمع بندی مباحث دوره
    توصیه هایی برای حرفه ای تر شدن
    مشخص نمودن مسیر آینده ی شما : بعد از پایان این دوره چه کنم ؟

 

توجه: قیمت این دوره در سایت های دیگر 90 هزار تومان است اما ما تنها با پرداخت 10 هزار تومان این پکیج را در اختیار شما قرار می دهیم

 

قیمت: 10 هزار تومان!(به مدت محدود!)

 

 

 

امید
سلام اموزش با زبان فارسیه

با سلام، بله ویدیوهای آموزش زبان PHP به زبان فارسی هستند

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
طراح قالب : حسین قدرت گرفته از بلاگ بیان