آموزش پی اچ پی- قسمت سیزدهم
تحریریه کدیاد
تاریخ انتشار : دوشنبه 2 اسفند 1400
در این جلسه از آموزش پی اچ پی (PHP) به ساخت و بررسی آرایهها پرداخته و نحوة کار با آنها را بررسی میکنیم. پس از تعریف آرایهها، به دستهبندی آنها رسیده و ویژگیهای هر کدام را برمیشماریم. در جلسة ۱۳ از آموزش پی اچ پی رایگان در سایت کدیاد، به تدریس بخش اول آرایهها بنام اندکسها رسیده و چگونگی ساخت سیستمی و دستی این نمونه کدها را با یکدیگر مرور میکنیم. یادگیری و تمرین این بخش از برنامهنویسی php بسیار مهم و در ادامة کار پروژهنویسی ضروری است. پس توصیه ما به شما مانند همیشه، توجه، دقت و تمرین چندینباره است. در صورت علاقهمندی به دنبال کردن مباحث آموزشی برنامهنویسی و کدزنی تحت وب، با ما همراه بوده و از آموزش پی اچ پی به زبان ساده این سایت بهرهمند گردید.
آرایهها
برای تعریف آرایهها در آموزش PHP میبایست به این نکته توجه کرد که آرایه ساختمان دادهای مملو از ظرفیت است. این منبع امکان نگهداری و ذخیرهسازی متغیرهای گوناگونی را داشته و میتواند به شکلی چندگانه یک آرگومان منفرد را به کاربر نشان دهد. طبق جلسات آموزش پی اچ پی (PHP)، آرایهها بهصورت دو مقداره بوده و شامل بخشهای کلید و مقدار هستند. یک آرایة همیشه از شمارة صفر آغاز شده و در ادامه بر آن افزوده میشود. بهطوریکه عدد اول شماره صفر را گرفته و عدد دوم شماره ۱ و الی آخر.
بدین ترتیب متوجه شدیم برای تهیه لیستی از آرگومانهای رشتهای، عددی، شناور و ... و ذخیرة مقادیر آنها، میتوان از آرایهها استفاده کرد. ذکر این نکته حائز اهمیت است که متغیرهای ذخیره شده در یک آرایه، ترجیحاً باید از یک نوع تایپ بوده و حتیالامکان یکسان باشند.
نمونه مثال نمایش آرگومانها در آرایه رشتهای
همانطور که در مثال آمده میبینید، ما از متغیر $myf جهت ذخیرهسازی نام دوستان مختلف استفاده کردهایم. نکته مهمی که در مورد این مدل کد نویسی وجود دارد، این است که میتوانید عناصر بیشتری را به آرگومانهای آرایة $myf در آینده افزوده یا کم کنید. در دوره آموزش برنامهنویسی PHP، روشهای گوناگون و بسیاری را جهت دستکاری مقادیر در پارامترهای آرایهای معرفی میکنند که ما نیز در ادامه، برخی از آنها را معرفی و اجرا میکنیم.
مقداردهی اولیه به آرایهها
برای مقداردهی اولیه یک پارامتر آرایهای و افزودن مقادیر به این پارامتر، مثالی میزنیم. اگر متغیر ما $myf باشد میتوانیم در تعریف مقادیر آن از اسامی دوستان استفاده کنیم. در واقع به این پارامتر، نامهای رشتهای را متصل کرده و ظرفیت آن را با رشتههای تعریفی پر میکنیم. عبارت $myf = array(“ali”,”mahsa”,”mmd”); نمایانگر مقداردهی اولیه به آرایه مورد نظر است.
در آموزش پی اچ پی خواهیم دید که مقداردهی به روشهای گوناگونی انجام میشود. در اکثریت مواقع این تعریف با کمک آرایة سازه array() تعریف شده و بهصورتی سیستمی پر میشود. این روش بنام مقداردهی اولیه آرایهای شناخته میشود.
انواع آرایههای قابل تعریف در زبان برنامهنویسی PHP
جهت آموزش پی اچ پی (PHP) نیاز به یادگیری انواع مختلفی از آرایه داریم که در این قسمت به معرفی آنها میپردازیم. آرایهها در پی اچ پی به سه قسمت آرایههای اندیس دار، آرایههای انجمنی و آرایههای چندبعدی تقسیم میشوند. هر کدام از این دستهها برای پیادهسازی متغیرها و مقادیر موجود در آنها دارای قواعد و قوانین خاص خود هستند.
نمایش آرایههای اندیس دار در برنامهنویسی php
- اندیس دار عددی
درصورتیکه برای به کار بردن آرایه، اندیسی جداگانه ذکر نشود، برنامه به شکلی اتوماتیک اقدام به قرار دهی اندیس کرده و آرگومانها را از شماره صفر، عددگذاری میکند. اندیس عددی بهطور کاملاً خودکار به مقادیر آرایه منتسب میشود. در نمونة آورده شده، شمارهای برای هر یک از موارد ذکر نشده است و ازاینرو آرایه بهطور خودکار با اندیسهای عددی پیشفرض، مقداردهی اولیه میشود. البته برنامهنویس طبق آموزش پی اچ پی (PHP)، میتواند یک آرایه اندیس دار را با استفاده از اندیسهای عددی ایجاد کرده و با کمک تابع vardump()به نوع و تعداد حروف آن پی ببرد.
- آرایههای انجمنی یا (Associative)
دستة دوم از این آرایهها به نام انجمنی یا Associative شناخته میشود. این دسته آرایه نیز مشابه آرایه اندیسداری عددی است؛ با این تفاوت که بهجای اندیس عددی، از اندیس رشتهای برای آن استفاده میشود.
مانند:
<?php
$myf = [];
$myf['name'] = 'ali';
$myf['email'] = 'ali@example.com';
$myf['phone'] = '09125143520';
?>
آرایههای چندبعدی
آرایه آخر با نام چندبعدی شناخته شده و از مقادیر مشترک آرایهها با یکدیگر ایجاد میشود. به شکلی که میتوان این مقادیر اسکالر را بهصورت متغیرها با همدیگر استفاده کرد. عناصر استفاده شده داخل این آرایهها را چندبعدی نامیده و بدین شکل به کار برده میشوند:
<?php
$myf = [
'name' => 'ali',
'email' => 'ali@example.com',
'phone' => '09125143520',
'sports' => ['Football', 'Tennis'],
'profiles' => ['instagram' => 'ali_21', 'twitter' => 'ali_12']
];
?>
همانطور که میبینید کلید sports در آرایه $myf، یک آرایه اندیس دار را در فیلد ورزشها نگهداری میکند. به همین ترتیب کلید پروفایلها نیز یک آرایه Associative یا انجمنی از آیدی پرفایلهای شخص را ذخیره میکند. همانگونه که در آموزش پی اچ پی (PHP) بیان شده است، متغیرهای یک آرایه چندبعدی، میتوانند با اندیس یا کلیدی که آرگومان در هر بخش آرایه بر میگرداند، قابل مشاهده بوده و به خروجی ارسال شوند.
انواع آرایه در برنامهنویسی php
کاربرد آرایههای اندیس دار در برنامهنویسی php
در آموزش PHP به دو روش برای ایجاد آرایههای اندیس دار اقدام میکنند. یکی به شکل خودکار و توسط سیستم و دیگری بهصورت کاملاً دستی و توسط برنامهنویس. در ادامه جزئیات این دو روش را بررسی میکنیم:
- در روش اول که بهصورت خودکار و اتوماتیک انجام میشود، شمارهگذاری یا indexing توسط خود برنامة پی اچ پی انجام شده و کاربر اختیاری در آن ندارد؛ مانند:
$myf=array(“ali”=>22,”mahsa”=>20,”mmd”=>20);
Var_dump($myf);
که خروجی آن بدین صورت نمایش داده میشود:
array(3) { [“ali”]=> int(22) [“mahsa”]=> int(20) [“ali”]=> int(20) }
در این مثال نوع آرایه و مقدار آرایه $myf، به تفکیک آورده شده است. با کمک تابع Var_dump() این اطلاعات قابل نمایش است.
- در روش دوم، شمارهزنی یا ایندکسگذاری کلیة متغیرها بر عهده برنامهنویس و بهصورت دستی خواهد بود؛ اما برای این کار نیز کاربر به چند روش، میتواند عمل کند. در ادامه مثالی برای توضیح این منظور آورده شده است:
روش اول دستی:
$myf=array(“nima”,”mmdreza”);
Var_dump($myf);
که خروجی آن بدین صورت نمایش داده میشود:
array(2) { [0]=> string(4) “mahsa” [1]=> string(7) “mmdreza”}
روش دوم دستی:
$myf [0]= “ali”;
$myf [1000]= “zahra”;
Var_dump($myf);
که خروجی آن بدین صورت نمایش داده میشود:
array(2) { [0]=> string(3) “ali” [1000]=> string(5) “zahra”}
چگونه ایندکسها را خارج کنیم؟
برای خارج کردن یک ایندکس از سری اطلاعات وارد شده و چاپ یا اکوی آن از دستور زیر استفاده میشود:
$myf=array(“ali”,”mahsa”,”mmd”);
echo “I love”. $myf[2];
که خروجی آن بدین صورت نمایش داده میشود:
I love mmd
راه دیگری که برای کاهش یک مقدار داده از آرایه مورد نظر در آموزش پی اچ پی به زبان ساده معرفی شده، فراخوانی توابع پیشفرض آرایهای همچون array_pop() است.
کاربرد فانکشن پیشفرض آرایهای array_pop() در زبان برنامهنویسی php
طبق آموزش پی اچ پی (PHP) برای استفاده از این تابع، کافی است نام آرایه به دستور داده میشود. تابع خود بهصورت هوشمند یک داده از آخر لیست را کم کرده و نمایش میدهد. در زیر نمونهای از این برنامه را میبینیم:
$myf=array(“ali,”mahsa,”mmd”);
array_pop($myf);
Var_dump($myf);
و خروجی اینگونه نمایش داده میشود:
array(2) { [0]=> string(3) “ali” [1]=> string(5) “mahsa”{
چگونه مقدار به آرایه اضافه کنیم؟
برای افزودن اطلاعات به آرایة مورد نظر، کافی است مقدار را در قالب مشابه تایپهای قبلی انتخاب کرده و داخل آرایه بریزید. بدین ترتیب سیستم بهصورت خودکار شمارة ایندکس را مشخص کرده و اطلاعات وارده را میافزاید.
$myf=array(“ali,”mahsa,”mmd”);
$myf[]=”hossein”;
که خروجی آن بدین صورت نمایش داده میشود:
array(4) { [0]=> string(3) “ali” [1]=> string(5) “mahsa” [2]=> string(3) “mmd” [3]=> string(7) “hossein” }
راه دیگری که برای افزودن مقدار داده به آرایه استفاده میشود، فراخوانی توابع پیشفرض آرایهای همچون array()ـpush است. در آموزش پی اچ پی (PHP) چنین بیان میشود که برای استفاده از این تابع لازم است دو ورودی یا دو آرگومان به دستور اضافه شود. اولی نام آرایة مورد نظر، دومی مقدار لازم جهت افزودن اطلاعات. در زیر نمونهای از این برنامه را میبینیم:
$myf=array(“ali,”mahsa,”mmd”);
array_push($myf,”mahdi”);
Var_dump($myf);
که خروجی آن بدین صورت نمایش داده میشود:
array(4) { [0]=> string(3) “ali” [1]=> string(5) “mahsa” [2]=> string(3) “mmd” [3]=> string(5) “mahdi” }
محاسبه طول یک آرایه و نمایش آن در خروجی
در ادامة جلسات آموزش پی اچ پی رایگان موجود در سایت کدیاد، به محاسبة طول یک آرایه پرداخته و این کار را با استفاده از توابع پیشفرض آرایهای انجام میدهیم. در چنین پروژههایی یک متغیر به نام arrlen تعریف کرده و برنامه را با آن شروع میکنیم. سپس اقدام به فراخوانی تابع count کرده و با استفاده از آن تعداد آرایههای موجود در دستور را برمیشماریم.
نمونه برنامه نوشته شده جهت نمایش کارکرد تابع count()
تابع ()Count امکان نمایش طول یک آرایه را به کاربر میدهد. برای استفاده از این تابع کافی است کدهای موجود در مثال بالا را وارد کرده و خروجی را به شکل: int(4) دریافت کنید.
چگونگی افزودن متغیر به آرایة اندیس دار
در این قسمت از آموزش پی اچ پی (PHP)، به نحوة افزودن یک آرگومان به داخل آرایه پرداخته و روش افزایش آن را با یکدیگر مرور میکنیم:
<?php
$array = [];
$array[] = 'ali';
$array[] = 'mahsa';
$array[] = 'mmd';
echo($array) <br>;
var_dump ($array);
?>
خروجی برنامة بالا به شرح زیر است:
[0] => String(3) “ali”
[1] => String(5) “mahsa”
[2] => String(3) “mmd”
مجدداً در آموزش پی اچ پی (PHP)، بر این نکته تأکید میکنیم که اندیس آرایهها از عدد صفر شروع میشود. هر زمان که مقدار جدیدی بدون مشخص ساختن مرتبة اندیس به یک آرایه افزوده شود، آرایه فوق کاملاً اتوماتیک و خودکار به اولین اندیس خالی متصل میشود. حتی میتوان آرایهای از مقادیر پیشفرض مشخص کرد تا میزان آنها به شکلی تعیین شده، نمایش داده شود؛ مانند مثال اول جلسه که بهصورت زیر نشان داده شده است:
<?php
$array = ['ali', 'mahsa', 'mmd'];
?>
دسترسی به عناصر آرایه با استفاده از حلقة for
در مورد مقداردهی اولیه به آرگومانهای آرایهای، در دوره آموزش برنامهنویسی PHP سایت کدیاد، مثالهای متعددی مطرح شده است. حال در رابطه با چگونگی دسترسی به این دادهها صحبت کرده و روشهای دستیابی به آنها را بررسی میکنیم. یک روش بهتر برای نوشتن کد و در جهت دستیابی به دادههای داخل آرایه، استفاده از حلقه for است. این حلقه موجب شده تا برای تکرار و افزودن عناصر آرایه راهی آسانتر در پیشروی برنامهنویس قرار بگیرد.
از حلقه for برای تعریف و چرخش یک دوره انتخابی بر روی متغیرهای آرایه استفاده میشود. عملکرد این حلقه بهمنظور دسترسی بیشتر کلیة اندیسهای آرایهای و سپس خارج کردن مقادیر متغیرهای ذخیره شده در آن اندیس است. در نمونه برنامة که در جلسه سیزدهم به آن پرداختیم از آموزش پی اچ پی (PHP)، از تابع پیشفرض سیستمی و آرایهای count استفاده شده که جهت شمارش تعداد عناصر یک آرایه به کار برده میشود.
نمونه مثال آورده شده جهت شرح کارکرد for در شمارش آرایهها در زبان php
کد فوق خروجی زیر را تولید میکند:
ali
mahsa
mmd
Mahdi
Reza
Hossein
نکتة قابل توجه در این کد، استفاده از این حلقه بهمنظور بالا بردن سرعت کار شده و برای بالا بردن کارایی آن نیز بهجای عدد مقایسه در قسمت دوم حلقه، از متغیر $arrlen استفاده میشود. بدین صورت $i < $arrlen.
در قسمت بعدی و به شکلی ساده طریقة باز شدة این کد و کارکرد حلقة for در این مجموعه برنامه را اینچنین پیادهسازی میکند:
echo $myf(0).”<br>”;
echo $myf(1).”<br>”;
echo $myf(2).”<br>”;
echo $myf(3).”<br>”;
echo $myf(4).”<br>”;
echo $myf(5).”<br>”;
نتیجه نیز همانند برنامة بالا خواهد بود.
برخی فانکشنهای پر استفاده در آرایههای php
در این قسمت از آموزش پی اچ پی (PHP)، به معرفی چند مورد از تابعهای پر استفاده در عملیاتهای کار با آرایهها میپردازیم.
تابع is_array
در زمانی که قصد داشته باشیم طبق اهداف پروژه، به بررسی یک متغیر پرداخته و تایپ آن را تشخیص دهیم، میتوان از این آرایه تابع بهره برد. تابع is_array تابعی Boolean بوده و به کاربر میگوید آرگومان مربوطه از نوع آرایه است یا خیر. بالأخص برای مواقعی که استفاده از یک متغیر، منوط به آرایه بودن آن است، چنین فانکشنی کمککننده خواهد بود.
تابع in_array
این تابع مناسب زمانهایی است که برنامهنویس قصد دارد به جستجوی متغیری بپردازد و از وجود آن در آرایة مورد نظر خود آگاه شود. تابع in_array نیز یک تابع Boolean محسوب میشود. این تابع دارای دو آرگومان شامل نام آرایه و متغیر مورد جستجو است.
قدمبهقدم با دورههای آموزشی پی اچ پی (PHP) سایت کدیاد
تابع array_push
در جلسات آموزش پی اچ پی (PHP)، گفتیم که جهت افزودن متغیر به داخل آرایه، میتوان از تابع array_push استفاده کرد. این تابع نیز دارای دو آرگومان نام آرایه و متغیر مورد نظر است.
تابع array_pop
برعکس تابع array_push، یک تابع array_pop وجود دارد که وظیفهاش حذف آخرین مقدار در یک آرایه است. این تابع صرفاً یک آرگومان با عنوان آرایة مذکور دارد.
تمرین جلسة بعد
برای جلسة آینده آموزش پی اچ پی (PHP)، لازم است یکبار دیگر برنامة نوشته شده با حلقة for را به کمک عبارت شرطی while بنویسید. لازم به تکرار نیست که هرچقدر تمرین و تلاش دانشجو بالاتر باشد، نتیجه کار بهتر بوده و او را برای ورود به بازار کار حرفهای آمادهتر میکند.
کلام آخر
در جلسه سیزدهم آموزش کد نویسی تحت وب با زبان php، به بررسی آرایهها پرداخته و نخستین بخش از کاربردهای آن را بیان کردیم. دانشجویان در این مقاله با روشهای ایجاد آرایه بهصورت دستی یا سیستمی آشنا شده و طریقة استفاده از آنها را یاد گرفتند. افزون بر آن امکان بهکارگیری توابع آرایهای همچون push و pop را شناخته و به کاربری count پی بردند. جلسات آموزش پی اچ پی (PHP) در سایت کدیاد، یکی از کاملترین و پرمخاطبترین دورههایی است که بهصورت کاملاً رایگان در اختیار علاقهمندان قرار گرفته است. توصیه ما استفاده از چنین موقعیتهای آموزشی منحصربهفرد و خاصی است که مخاطبان را جهت بالا بردن تواناییهای علمی و تخصصی خود،کمک میکند. پرتلاش و توانا باشید.
قسمت قبلی آموزش رایگان php :
نمایش دادههای ورودی به شکل int
قسمت بعدی آموزش رایگان php
یا جهت مشاهده ویدیوهای اموزشی آموزش رایگان پی اچ پی وارد این صفحه شوید.