PDA

View Full Version : کتاب مرجع PHP - قسمت اول: برنامه های PHP



tabib_m
یک شنبه 27 آذر 1384, 23:25 عصر
بسم الله الرحمن الرحیم
با سلام.
از اونجایی که اکثریت دوستان با نصب PHP مشکلی ندارن و یا اگر مشکلی هست در پست های زیادی حل شده بنده از قسمت آموزش نصب PHP در این کتاب خودداری کردم.

برنامه های PHP :
برنامه های PHP در فایل های متنی استاندارد ذخیره شده اند، که میتوانید با استفاده از هر ویرایش گر متنی ایجاد کنید (توجه داشته باشید که ویرایش گر های متنی مکینتاش گاهی اوقات کاراکتر های سطر جدید (line break) را اضافه میکنند که PHP در فهمیدن آنها دچار مشکل میشود، پس باید به دنبال گزینه ای در چنین ویرایشگرهایی بگردید تا فایل ها را با "UNIX – style linebreaks" ذخیره نمایید). طبیعتاً، ملزم خواهید شد فایل را با پسوند php ذخیره کنید تا توسط یک سرویس دهنده ی وب اجرا شود، اگر چه پسوند میتواند معمولا با آن چه که دلخواه شما است، پیکربندی گردد. در اینجا مثالی از فایل httpd.conf در سرویس دهنده ی Apache داریم، که در آن یک پسوند .prophp4 ایجاد کرده ایم:

AddType application/x-httpd-php .prophp4
در حالت دیگر، اگر از PHP برای نوشتن برنامه های کنسولی استفاده میکنید، پسوند فایل مهم نیست.

مقدمات فایل:
برنامه های PHP به یکی از دو روش اجرا میگردند: بوسیله ی یک سرویس دهنده ی وب ، یا به عنوان یک برنامه ی کنسول. برنامه های PHP میتوانند از طریق سرویس دهنده ی وبی که برای پشتیبانی از PHP بوسیله ی افزودن آنها به ساختار و دایرکتوری سرویس وب پیکربندی شده اند، در دسترس قرار خواهید داد. به آنها درست همانند دسترسی به صفحات ایستای وب، از یک مرورگر وب دسترسی پیدا خواهد شد. هنگامی که یک مرورگر ، صفحه ای را در خواست میکند که با پسوند .php پایان میابد، سرویس دهنده ی وب برنامه را از طریق موتور PHP اجرا می کند.
هنگامی که موتور PHP شروع به اجرای اسکریپت میکند ، رفتار پیش فرض آن خارج کردن محتویات فایل به صورت دست نخورده است. این خروجی یا به مرورگری که صفحه را تقاضا نموده یا به کنسول، در هنگام اجرا به عنوان یک اسکریپت میرود.
به آسانی میتوانید یک صفحه HTML معمولی را بگیرید، به گونه ای مجددا نامگذاری کنید که یک پسوند .php به خود بگیرد و PHP آن را پردازش نماید، اما اصلا هیچ کاری روی آن انجام ندهد.
جهت لحاظ نمودن دستورات PHP درون فایل ، باید از این مد خروجی استاندارد در داخل PHP "escape" نماییم (خارج شویم). این کار با قرار دادن دستورات PHP درون جداسازها (delimiters) انجام میگیرد.
دستورات پردازشی SGML :


<?

?>

دستورات پردازشی XML :


<?php

?>

نوع اسکریپتی و ویرایشگر پسند (editor-friendly) HTML :


<script language="php">

</script>

روش ASP ، برای ویرایشگرهایی که تگ های ASP را میفهمند و نه تگ های PHP را :


<%

%>

در این کتاب از روش XML استفاده خواهیم کرد، اما تفاوت عملی بین هر یک از این مجموعه جداسازها وجود ندارد.
یک روش کد نویسی که ممکن است با آن مواجه شوید، گر چه از آن به دلیل ایجاد سردرگمی زیاد استفاده نمیکنیم ، این است :


<?=…?>
<%=…%>

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


Two plus two is <?=2+2?>

که خروجی آن خواهد بود:


Tow plus two is 4

در اکثر مواقع، به جای استفاده از این روش جداسازی برای خروجی مقادیر از کد PHP، از دستور echo به صورت زیر استفاده خواهیم کرد:


Tow plus two is <?php echo(2+2) ?>

دستور echo یکی از رایجترین راههای افزودن متن به جریان خروجی از داخل جداسازهای PHP است. اکثر عملیاتی که درون بلاک های کد PHP ارائه خواهیم کرد، مستقیما به هیچ خروجی منتهی نمیگردند، و هنگامی که میخواهیم متنی را اضافه کنیم که درون برنامه خود تولید کرده ایم، از دستور echo برای این منظور استفاده خواهیم کرد. میتوانیم از دستور echo برای چاپ متن، اعداد، یا نشانه گذاری HTML و کلا هر چیزی که به طور طبیعی درون یک صفحه وب لحاظ میشود، استفاده نماییم. نکته مهم این است که PHP به ما امکان میدهد از تمامی انواع عملیات برای تعیین دقیق خروجی ای که تولید خواهیم کرد ، استفاده نماییم.

پایان
------------
دوستان خواهشمندم اگر مطلبی براشون واضح نیست (کما اینکه برای خودم گاهی پیش میاد) همینجا مطرح کنن تا بزرگترها توضیح بدن. اینجوری عبارات نامفهوم بهتر فهمونده میشن. خیلی ممنون.

moohssenn
دوشنبه 28 آذر 1384, 00:41 صبح
ممنون و مرسی

oxygenws
دوشنبه 28 آذر 1384, 17:30 عصر
سپاسگذارم، بعد از تکمیل نسبی مطالب، در مکانی، آرشیو و *مهم* خواهند شد :)

aysan_gh
دوشنبه 04 خرداد 1388, 11:15 صبح
سلام
من می خواستم یه ماشین حساب تو phpبنویسم اگه ممکنه در این مورد راهنماییم کنید
ضمنا طراحیم با htmlهستش وکد با php
اگه کسی کمک کنه ممنونم .

maysamscript
چهارشنبه 06 خرداد 1388, 12:24 عصر
چرا سوالتون رو اینجا مطرح کردید؟
یه نگاه به تاریخ اولین پست این تاپیک بیندازید!