PHP

با پیشرفت روز افزون زبان های برنامه نویسی PHP توانسته با بروز رسانی های متعدد جزء بهترین ها باشد و حتی حیطه کاری خود را فراتر از وب گسترده کند. در این مجموعه مطالب آموزنده، دستورات و نمونه برنامه های آماده به زبان برنامه نویسی محبوب PHP قرار می گیرد.

HTML & CSS

همان طور که میدانید HTML مبنای هر صفحه ی وب می باشد، همچنین رنگبندی و قالب های آن با کمک دستورات CSS کامل میشود. در این مجموعه مطالب آموزنده، دستورات، نمونه کدها و قالب های آماده قرار می گیرد.

Javascript & Jquery

برای ساخت یک صفحه ی وب سریعتر و با امکانات پیشرفته حتماً به Javascript و یا کتابخانه Jquery نیاز خواهید داشت. در این بخش آمورش ها، کدهای جالب و کابردی از این زبان فرار می گیرد.

شاید برای شما هم پیش آمده که بخواهید در یک متن دنبال یک کلمه یا عبارت بگردید و روی آن تغییرات دلخواه را اعمال کنید.

به عنوان مثال در متن دلخواه دنبال عبارت "دینامیت" بگردید و تمام آنها را به رنگ نارنجی دربیاورید و به صفحه ویکی پدیا واژه "دینامیت" لینکش کنید. یا مثال دیگر در موتور جستجوی داخلی سایتتون عبارت های جستجو شده را پررنگ یا Highlight کنید و خیلی کاربرد های دیگر.

یکی از روش های معمول استفاده از توابع کار با رشته حروف یا String هاست که PHP در این ضمینه بسیار قدرتمند است. استفاده از توابعی مانند strpos ، strlen یا نسخه mb_strpos که برای حروف فارسی و عربی بدون ایراد می شود.

ولی تابع (mb_strpos) برای پیدا کردن اولین کلمه ساده و سریع است منتها برای پیدا کردن همه ی کلمات در متن بخصوص متون طولانی، علاوه بر پیچیدگی برنامه، بدلیل حلقه for طولانی مصرف cpu بالایی دارد.

خوش بختانه در این مواقع روش Regular Expression یا همان RegEx با سرعت بالا به کمک ما می آید. در ادامه ی مطلب با نوین ایران باشید که چگونه با چند خط ساده بکمک RegEx (با قابلیت پشتیبانی از حروف فارسی و UTF-8) مسئله را حل کنیم.

همان طور که میدانید یکی از نقاط قوت PHP توابع پیش فرض متعدد در کتابخانه ی آن است. آرایه در PHP کاربرد بسیاری دارد و در واقع کار Stack و Queue (پشته و صف)، لیست پیوندی و... در دل خود دارد. این توابع در برنامه نویسی شما بسیار کاربردی بوده و علاوه بر سهولت استفاده، سبب خواناتر شدن برنامه و سریعتر شدن آن می شود.

توابع کلی کار با آرایه را در سایت رسمی PHP.NET می توانید پیدا کنید ولی همه ی این توابع همیشه مورد استفاده شما نیستند و شاید حوصله بررسی همه را نداشته باشید.

نوین ایران در جدول زیر لیست توابع پرکاربرد کار با آرایه را در PHP برای شما تهیه کرده و توضیح مختصری هم به زبان فارسی در جلوی هر Function آمده است. با کلیک روی Function می توانید وارد صفحه رسمی هر Function در سایت PHP.NET شده و مثال های آن را نیز ببینید.

تابع توضیحات
array() تعریف یک آرایه
array_change_key_case() تغییر تمام اندیس یا کلید های یک آرایه
array_chunk() تقسیم آرایه به چند تکه
array_combine() دو آرایه را ترکیب میکند، آرایه اول کلید ها و آرایه دوم مقادیر آن ها
array_count_values() تعداد کل مقادیر آرایه را برمیگرداند
array_flip() برعکس کردن کل کلید های یک آرایه
array_keys() فقط کلید های یک آرایه را در قالب یک آرایه دیگر بر میگرداند
array_merge() ترکیب یک یا چند آرایه
array_multisort() مرتب سازی آرایه یک یا چند وجهی
array_pad() گسترش آرایه با مقداری دلخواه در صورت کم بودن تعداد

Jquery یک کتابخانه ی جاواسکریپت می باشد که همان طور که از شعارش پیداست (کمتر بنویس، کار بیشتر انجام بده) کدهای شما را خلاصه تر، خوانا تر و کم ایراد تر می کند. یادگیری jquery بسیار ساده است. چنانچه شما html و css رو خوب بلدید وقتش هست که jquery دانش شما را کامل تر کند. کدهای جی کوئری بسیار خلاصه تر از javascript هستند، به مثال ساده زیر توجه کنید:


var $el = document.querySelector('.welcome-text')

کد بالا جاوااسکریپت است اما اگر بخواهید بصورت Jquery بنویسید:


var $el = $('.welcome-text')

همان طور که مشاهده میکنید، نسبت به کد اول بسیار ساده تر شد. البته این یک مثال کوچک است و در عمل گاهی 5 خط javascript یا حتی بیشتر از آن با تنها یک خط jquery قابل نوشتن است.
در ادامه کتاب آموزشی در قالب pdf و با زبان فارسی برایتان قرار دادیم...

لیست کامل تگ های استاندارد موجود در html را در جدول زیر مشاهده می کنید.

  • تمامی تگ ها به ترتیب الفبا تنظیم شده اند.
  • تگ های قدیمی و از رده خارج شده که هنوز می توانید استفاده کنید نیز قرار داده شده است.
  • توضیحات هر تگ روشن است ولی در صورتی که سوالی دارید در بخش کامنت بپرسید.
Tag Description
<!--...--> Specifies a comment
<!DOCTYPE> Specifies the document type
<a> Specifies an anchor
<abbr> Specifies an abbreviatioan
<acronym> Deprecated:Specifies an acronym
<address> Specifies an address element
<applet> Deprecated: Specifies an applet
<area> Specifies an area inside an image map
<article> New Tag: Specifies an independent piece of content of a document, such as a blog entry or newspaper article

ادامه ی تگ ها در ادامه ی مطلب...

درصورتی که یک آرایه ای داشته باشیم که شامل رابطه ی پدر فرزندی بین دو خانه ی آن باشد ولی بصورت زیر شاخه نباشند، بهتر است آن را برای فهم بهتر و استفاده راحت تر به شکل درختی دربیاورید. (توجه داشته باشید در PHP چون آرایه های چند بعدی حافظه ی زیادتر اشغال نمی کنند عملاً تغییر شکل آرایه ها و تشکیل آرایه های تودرتو در اشغال حافظه ی رم تاثیری ندارد)

به عنوان مثال جدولی بنام category در پایگاه داده داریم که این جدول شامل دو کلید id و parent_id می باشد که parent_id پدر فیلد مورد نظر است. همان طور که می دانید اگر با دستور select نتایج از دیتابیس مثلا MySQL خوانده شود آرایه ای به شکل زیر تحویل php می شود:

$items = array(
         array('id' => 42, 'parent_id' => 1),
         array('id' => 43, 'parent_id' => 42),
         array('id' => 1,  'parent_id' => 0),
);

حال برای استفاده راحتر باید آرایه به شکل زیر تبدیل شود :

array
(
    [id] => 1
    [parent_id] => 0
    [childs] => Array
        (
            [0] => 
                (
                    [id] => 42
                    [parent_id] => 1
                    [childs] => Array
                        (
                            [0] => 
                                (
                                    [id] => 43
                                    [parent_id] => 42
                                )
                        )
                )
        )
)

همان طور که مشاهده می کنید درخت ایجاد شده و شاخه ای بنام childs درصورتی که فرزندی وجود داشته باشد تشکیل می گردد. برای ایجاد چنین آرایه ای به کد php زیر دقت کنید...: