[Powered by Google Translate] [PHP توسعه وب] [تامی MacWilliam] [این CS50 است.] [CS50.TV] در این فیلم، ما در مورد استفاده از پی اچ پی برای توسعه وب یاد بگیرند. PHP یک زبان برنامه نویسی است که می تواند برای پیاده سازی استفاده می شود وب سایت ها بر روی سرور وب. وب سرور است که در اصل یک ماشین اختصاص داده شده به ارائه مطالب است که می تواند از طریق اینترنت قابل دسترسی است. هنگامی که شما به یک صفحه وب مانند Facebook.com / home.php حرکت کد را در فایلی به نام home.php که بر روی یک وب سرور فیس بوک زندگی می کند جایی خواهد شد که سرور اجرا. این کد به احتمال زیاد تولید برخی از خروجی که به نوبه خود از سرور فرستاده می شود به مرورگر وب خود. ما با استفاده از دستگاه CS50 به عنوان یک وب سرور. ماشین شما احتمالا نمی خواهد نزدیک به عنوان قدرتمند به عنوان ماشین آلات در فیس بوک مرکز داده، اما شما هیچ مشکلی با استفاده از آن برای توسعه وب سایت داشته باشد. هنگامی که ما به یک URL حرکت مانند http://localhost/hello.php ما پیکربندی دستگاه از طریق یک برنامه به نام آپاچی سرور HTTP برای یک فایل hello.php داخل خانه / jharvard / vhosts / localhosts / اچ تی ام ال به نام به طور پیش فرض است. در صورتی که فایل وجود دارد و سپس آپاچی مترجم PHP استفاده کنید برای اجرای کد های PHP را در hello.php. اگر این فایل وجود ندارد و سپس آپاچی یک خطا یافت نشد پرتاب و یا یک خطای 404 را، که احتمالا شما در هنگام مرور وب سایت دیده می شود. اجازه دهید نگاهی به hello.php. ما در اینجا می توانید ببینید که hello.php تولید یک خط سیگنال خروجی. هنگامی که ما hello.php در خط فرمان از طریق hello.php پی اچ پی فرار که خروجی به ترمینال چاپ شده بود. در حال حاضر، زمانی که ما دسترسی به این فایل از طریق یک URL در مرورگر وب خروجی آن خواهد شد به مرورگر وب فرستاده می شود، بنابراین از رفتن به URL، http://localhost/hello.php، ما می توانیم خروجی در مرورگر وب ما را ببینید. دهید چون printf یکی دیگر از برنامه جهانی سلام ما را. خوب، اجازه دهید سر به مرورگر وب و ببینید چه چیزی ما. جالب. به جای چاپ خط دیگر در خط خود را، که شما را دیده اند، در ترمینال، به نظر می رسد مانند آن را بر روی همان خط smushed کردم به عنوان چون printf دیگر، خطوط تا شاید جدید در PHP کار نمی کند. نه کاملا. به یاد داشته باشید که HTML به طور معمول مورد استفاده برای ایجاد صفحات وب که می تواند توسط مرورگر وب نمایش داده می شود. نه تنها رشته از پی اچ پی HTML معتبر نمی باشد سلام، اما به یاد می آورند که ما می توانیم شخصیت \ n در HTML استفاده کنید برای ایجاد یک خط. به جای به سادگی خروجی خروجی HTML معتبر رشته اجازه. با استفاده از هر یک از تماس های چون printf ما پاراگراف خواهد شد در خط خود را نمایش داده، بنابراین در حال حاضر زمانی که بازدید ما اشاره URL به valid.php http://localhost/valid.php ما خروجی است که ما به دنبال را ببینید. حال اگر ما به منبع این صفحه ما می توانید ببینید که ما در حال حاضر در HTML معتبر به دنبال، که ما از PHP ایجاد شده است. قرار دادن تمام HTML در داخل تماس چون printf البته برای به دست آوردن واقعا آزار دهنده است. خوشبختانه ما به راحتی می تواند به HTML و PHP مخلوط در همان فایل پی اچ پی. به یاد داشته باشید، همه از کد PHP ما باید در <؟ پی اچ پی محصور می شود و>. هر چیزی که در درون این حائل محصور نیست به سادگی به عنوان خروجی به مرورگر ارسال می شود به جای اعدام شدن. این بدان معناست که ما چیزی شبیه به این می تواند انجام دهد. ما به سادگی می تواند HTML در داخل فایل پی اچ پی ما. ارسال و سپس وارد بلوک های PHP در هر کجا که ما می خواهم برخی از کد پی اچ پی اجرا شود. در اینجا چند متغیر را تعریف می کنیم در بالای فایل، و بعد ما آنها را به نسخه قابل چاپ کردن در داخل از HTML است. حال اگر این URL بازدید، http://localhost/mixed.php ما می توانیم PHP مورد بررسی ما در داخل از HTML ما را ببینید. حالا اجازه دهید نگاهی به چگونه ما می توانیم اطلاعات را عبور در میان صفحات PHP مختلف ما است. به جای گفتن <پی اچ پی چاپ ($)؛؟> ما به سادگی می توان گفت <؟ = متغیر ما می خواهم برای چاپ، و یا، و>. اکنون بیایید نگاهی به چگونگی ما می توانیم اطلاعات را منتقل کنند در میان صفحات PHP مختلف ما است. یکی از راه ما می توانیم که انجام آن برای رمزگذاری اطلاعات به URL از یک صفحه. هنگامی که در حال دیدن این وب سایت، شما ممکن است متوجه شده است که بعضی از آدرس ها شامل؟ پس از یک رشته حاوی آمپرسندهای کاربردی و نشانه های برابر است. این بخشی از URL به عنوان رشته پرس و جو شناخته شده است، و این اجازه می دهد تا شما را به طور موثر به اسکریپت PHP شما آرگومان. رشته پرس و جو متشکل از جفت کلید، درست مثل یک جدول هش. علامت مساوی یک کلید و مقدار متناظر با آن را از هم جدا در حالی که آمپرسندهای کاربردی جفت جدا. URL که به نظر می رسد http://localhost/get.php؟foo=bar&baz=qux دارای 2 جفت ارزش کلیدی در رشته پرس و جو. غذایی کلیدی نقشه به نوار ارزش، و باز کلیدی نقشه به qux ارزش. ما به راحتی می توانید این جفت کلید دسترسی به استفاده از یک متغیر خاص در PHP، $ _GET. $ _GET یک آرایه انجمنی است که به طور خودکار با داده های رشته پرس و جو جمعیت. این بدان معنی است که با توجه به این URL $ _GET ["تولی"] به نوار رشته برابر خواهد شد. اجازه دهید نگاهی به get.php برای دیدن _GET $ در عمل است. در اینجا ما با استفاده از یک تابع به نام var_dump، که زمانی که یک آرایه یا متغیر دیگر خواهد آن را چاپ کنید برای ما. حال اگر ما به سادگی دسترسی به http://localhost/get.php پس از آن خواهیم یک آرایه خالی نگاه کنید چون ما یک رشته پرس و جو کرده اند ارائه نشده است. اگر ما ارائه یک رشته پرس و جو از طریق http://localhost/get.php؟foo=bar&baz=qux پس از آن ما می توانید ببینید که متغیر $ _GET شامل خواهد شد جفت کلید رشته پرس و جو است. اما اگر ما نمی خواهیم برای قرار دادن داده های ما در داخل URL از یک صفحه؟ برای مقدار زیادی از اطلاعات، این می تواند در بعضی از آدرس ها بسیار زشت شود که در حال رفتن به براق لنگ وب سایت نگاه ما. ما به جای آن می تواند رشته پرس و جو در داخل بدن قرار از درخواست HTTP به جای URL درخواست شده است. پس ما می توانیم _POST $ متغیر پی اچ پی استفاده کنید برای دسترسی به جفت ارزش کلیدی است. یک راه برای انجام این کار از طریق فرم HTML. در اینجا ما یک فرم HTML ساده است. توجه کنید که در اینجا ویژگی روش این شکل نوشته شده است. این می گوید که مرورگر برای قرار دادن جفت کلید ارزش به فرم به بدنه درخواست به جای URL. اگر ما به استفاده از مقدار این ویژگی را دریافت کنید پس از جفت کلید ارزش فرم به جای آن به رشته پرس و جو به، بنابراین ما می تواند آنها را از طریق $ _GET دوباره دسترسی پیدا کنید. ویژگی عمل به شکل مرورگر که در آن به ارسال داده ها می گوید. در اینجا 2 عناصر ورودی ما ویژگی های نام. ارزش ویژگی های نام به عنوان کلید به داده های ما خدمت می کنند، و ارزش های ورودی متن تبدیل ارزش های آن کلید خواهد کرد. حالا اجازه دهید نگاهی به post.php، فایل که این فرم ارسال به. درست مثل ما قبل از انجام، ما به سادگی نمایش محتویات متغیر $ _POST. اجازه دهید به فرم با http://localhost/form.php حرکت. هنگامی که ما از فرم را ارسال کنید ما می توانید ببینید که داده ها را از form.php به تصویب می رسد به post.php بدون الحاق رشته پرس و جو به URL. در حال حاضر ما دیده می شود 2 راه مختلف عبور داده و در میان صفحات PHP، دریافت و ارسال. در مثال ما، ما 2 نوع مختلف از درخواست های HTTP استفاده می شود. همانطور که شما ممکن است انتظار داشت، یک درخواست GET هنگامی که ما جمعیت استفاده شد $ _GET از URL، و یک درخواست ارسال مورد استفاده قرار گرفت هنگامی که ما $ _POST جمعیت. در طراحی برنامه های وب خود را آن هم یک حکومت خوب از انگشت شست برای استفاده از GET درخواست زمانی که برنامه شما فقط خواندن اطلاعات، و ارسال درخواست زمانی که برنامه شما داده خواهد شد ارسال. به عنوان مثال، پرس و جو جستجو خواهد داده ها را از برنامه خود را به عنوان خوانده شده، بنابراین یک درخواست GET را حس می کند. از سوی دیگر، برنامه خود را به اطلاعات از طریق چیزی شبیه به یک فرم ثبت نام ارسال، بنابراین یک درخواست ارسال را حس کند، و یک نمای کلی از برخی از تکنیک است ما خواهید بود با استفاده از در CS50 برای ایجاد وب سایت با استفاده از PHP. نام من تامی است، و این CS50 است. [CS50.TV]