Free Web Hosting by Netfirms
Web Hosting by Netfirms | Free Domain Names by Netfirms

 

صفحه‌ي اصلي         مقاله          تازه ها         كامپيوتر          ترفند          وبلاگ          نظر شما          درباره‌ي ما          تماس با ما

صفحه 3  صفحه 2   صفحه 1

پیوند زدن رشته ها

درphp ، عملگر نقطه (.) برای متصل كردن یا پیوند زدن دو رشته به یكدیگر   مورد استفاده قرار می گیرد .

شما می توانید با این عملگر تعداد بیشتری رشته را نیز به هم پیوند بزنید .برای مثال :

$newstring=$astring .$bstring .

توجه

با توجه به چگونگی برخورد php به متغیرها شما می توانید از دستور

$name=”$firstname $lastname”;

نیز برای رسیدن به منظور خود استفاده كنید ،از آنجایی كه این عبارت داخل دو علامت دابل كوتیشن قرار گرفته است ، در هنگام اجرای دستور،مقادیر متغیر ها  به جای آنها قرار می گیرند.

 رمز گذاری و رمز گشایی رشته ها

اگر بخواهیم مقدار یك متغیر ،كه حاوی رشته ای متشكل از تعدادی كلمه است را از طریق URL  ارسال كنیم ،چه باید بكنیم :

برای انجام این كار می توانید از تابع urlencode()  استفاده كنید .همان گونه كه از نام این تابع هم پیداست ،این تابع یك داده رشته ای را دریافت می كند و آنرا رمزگذاری می كند و بعد از تبدیل به شكل مناسب ،آنرا به URL اضافه می كند .

دستور استفاده از این تابع به صورت زیر می باشد :

$string=urlencode($string) ;

این تابع بیشتر برای ار سال موارد سری مثل رمز عبور استفاده می شود.

توجه

 تابع urldecode() ،عمل عكس تابع  urlencode()را انجام می دهد

 پنهان سازی و آشكار سازی داده ها

معمولا برنامه نویسان برای حفاظت از داده ها آنها را پنهان می كنند و شكل داده ها را به صورت غیر قابل فهم و یا حداقل بسیار مشكل برای آشكار سازی در می آورند . كد های رمز password یكی از مواردی است كه ممكن است بخواهید آنها را پنهان سازی كنید .

با این وجود ،توجه كنید كه پنهان سازی دادها  به  تنها یی نمی تواند ،امنیت سایت وب شما را تضمین كند زیرا اولا ، می توان داده های پنهان سازی شده را با مقداری تلاش ،رمزگشایی كرد .همچنین از آنجایی كه php یك تكنولوژی سمت سرور محسوب می شوند ،سطوح امنیتی به كار گرفته شده توسط php ،تنها زمانی كه داده ها توسط اسكریپت دریافت می شوند ،به كار گرفته می شوند . بنابراین برای ایجاد امنیت به هنگام انتقال داده ها از مرورگر كاربر به سرویس دهنده ، باید از روشهای دیگری استفاده شود.در این قسمت سه تابع برای پنهان سازی و آشكار سازی رشته ها معرفی  می شوند.اولین تابع برای پنهان سازی داده ها تابع crypt() می باشد . اما توجه كنید كه در صورت استفاده از ابن تابع ، تابعی برای آشكار سازی نخواهید داشت .

اولین تابع را به  صورت زیر می توان استفاده كرد :

Crypt() is:

$data = crypt($data);

تابع دیگر برای پنهان سازی داده ها ، تابع encrypt() می باشد . داده پنهان سازی شده توسط این تابع ،بوسیله تابع decrypt() رمزگشایی می شود .اما برای استفاده از این تابع ، باید ضمیمه مربوط به این توابع در مدل php نصب شده باشد.

 جدا كردن بخشهای مختلف یك رشته

شما می توانید یك رشته را به رشته های كوچكتر تقسیم كنید . در  phpدو تابع برای انجام این كار وجود دارد:

تابع strtok() ، یك داده رشته ای را از یك رشته بزرگتر جدا می كند . این داده رشته ای توسط یك علامت جداكننده مشخص می شود . برای مثال اگر یك كاربر  نام كامل خود را در یك فیلد فرم وارد كند و این نام در متغیر$Name  ذخیره شود ، شما می توانید با استفاده از دستور زیر نام این كاربر را استخراج كنید .

$First Name = strtok($name,””);

این تابع به php فرمان می دهد كه تمام كاراكتر های موجود در متغیر $Name   تاقبل از اولین كاراكتر جای خالی را در متغیر $FirstName قرار دهد .

روش دوم برای مشخص كردن بخشهای مختلف یك رشته ،استفاده از اندیسها می باشد . منظور از اندیس در یك رشته ،موقعیت عددی یك كاراكتر می باشد ، به گونه ای كه این شماره گذاری ازصفر شروع می شود. برای استفاده از این روش از تابع substr() به صورت زیر استفاده می شود :

$substring = substr($string,0,10);

به هنگام استفاده از این تابع پارامتر اول رشته اولیه را مشخص می كند در دومین پارامتر ،مكان شروع رشته ای را كه می خواهیم از رشته اولیه جدا كنیم بر اساس اندیس مشخص می كنیم. سومین پارامتر ،تعداد كاراكتر هایی را كه می خواهیم از رشته اولیه جدا كنیم ،مشخص می كند .

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

$stringLength = strlen( $string);

توجه

به جای مشخص كردن مقدار متغیر $Length در خود اسكریپت ، می توانید از روش URL/GET برای مقدار دهی این متغیر استفاده كنید.

 استفاده از آرایه ها

یك آرا یه در واقع مجموعه ای از داده ها می باشد كه در این متغیر ذخیره شده اند . شما در این روش ، برای هر یك از عناصر این لیست ،باید یك متغیر رشته ای ایجاد كنید .آرایه می تواند حاوی مقادیر مختلف ومتعدد باشد كه هر یك از این مقادیر در یكی از  خانه های این آرایه ذخیره می شوند .هر یك از این خانه ها دارای یك اندیس ویا یك لغت راهنما می باشند .آرایه ها را می توان به عنوان جداولی با دو ستون در نظر گرفت . در ستون اول اندیس خانه ها قرار داده می شود ودر ستون دوم مقادیر متناظر هر یك از این اندیس ها قرا ر می گیرد .

 ایجاد یك آرایه

برای ایجاد یك آرایه از array به صورت زیر استفاده می شود:

$List = array(“applse” ,”bananas” ,”oranges”);

دراین مثال شما چیزی به این مقادیراختصاص نداده اید اندیس 0 برای  applseو  1برای bananas در نظر گرفته می شود .

 افزودن عناصر جدید به یك جدول

در php بعد از ایجاد یك آرایه می توانید عناصر جدید را به آن اضافه كنید و یا عناصر موجود را تغییر دهید .در این هنگام باید ،حتما از براكت در جلوی نام آرایه استفاده كنید .در داخل این براكت می توانید یك اندیس قرار دهید و یا در صورت خالی گذاشتن داخل آن به صورت خودكار ،اندیس مناسب ،اختصاص داده می شود.

برای مثال :

$List[] = “pears”;

اگر این آرایه همان آرایه معرفی شده در مثال قبل باشد با اجرای این كد ،اندیس 4 به عنصر pears اختصاص داده می شود .

تابع array_merge() برای پیوند زدن دو آرایه  در php4 به یكدیگر به كار می رود .

دسترسی به عناصر  آرایه

بدون توجه به چگونگی ایجاد یك آرایه ،شما تنها یك روش باری دسترسی به عناصر یك آرایه در اختیار دارید ،و آن استفاده از اندیس عناصر می باشد. برای مثال اگر بخواهید مقدار یكی از خانه های آرا یه را در یك متغیر جداگانه ذخیره كنید احتیاج به كدی شبیه به كدزیر خواهید داشت:

$Totol = $Array[1];

بنابراین شما برای دسترسی به یك عنصر خاص از یك آرایه ،احتیاج به اندیس آن عنصر خواهید داشت .اگر برای اندیس گذاری یك آرایه از رشته ها استفاده كنید ، دیگر نمی توانید از اندیس های عددی برای اشاره به عناصر یك آرایه  استفاده كنید.

سریعترین و آسانترین روش ،برای دسترسی به تمام عناصر یك آرایه استفاده از تابع each() ،در داخل یك حلقه می باشد .این تابع یك آرایه جدید از اندیس ها و مقادیر یك  آرایه ،ایجاد می كند .اگر از این تابع ،در حلقه for استفاده كنید،می توانید در هر بار تكرار حلقه ،یكی از مقادیر و یا اندیس های آرایه را چاپ كنید.

توجه

 همچنین توجه داشته باشید كه  phpنسبت به بزرگ و كوچك  بودن حروف اندیس ها ی رشته ای حساس است .

مرتب كردن آرایه ها

Php روش های متعددی برای مرتب كردن آرایه ها پشتیبانی می كند .همان طور كه می دانید آرایه ها دارای اندیس های مختلف علاوه بر مقادیر مختلف نیز می باشند. در  php ، یك آرایه می تواند هم بر اساس مقادیر آن وهم بر اساس اندیس های آن ،مرتب شود .

همچنین php می تواند بدون تغییرمكان اندیس ها،مقادیر آرایه را مرتب كند و به ترتیب در خانه های آرایه  قرار دهد .در این حالت ممكن است هر یك از مقادیر ، دارای اندیس جدید شوند.

برای مرتب كردن مقادیر بدون حفظ تناظر بین آنها و اندیس ها از تابع sort() استفاده می شود.همچنین برای مرتب كردن مقادیر به صورت معكوس از تابع rsort() استفاده می شود .

Function ($Array) ;

So,sort() and rsort() are simply:

Sort($Array) ;

rSort($Array) ;

برای مرتب كردن مقادیر ،با حفظ ارتباط یا تناظر آنها با اندیس ها ،از تابع asort() استفاده می شود . برای اینكه ترتیب قرار گرفتن عناصر در خانه ها در این حالت ، معكوس شود ،از تابع arsort() استفاده می شود.

برای مرتب كردن اندیس ها ، با حفظ تناظر بین آنها و مقادیر آرایه از تابع ksort() استفاده می شود . تابع skuffle() به صورت تصادفی عناصر یك آرایه  را مرتب می كند.

تبدیل رشته ها و آرایه ها به یكدیگر

دو تابع برای تبدیل این دو به یكدیگر وجود دارد. تابع اول implode() است که یك آرایه را به یك رشته تبدیل می كند و تابع دوم explode() ،عكس این عمل را انجام می دهد .

توجه

ممكن است بخواهید برای ارسال مقادیر یك تابع از روش Get  استفاده كنید ، در این صورت بسیار ساده تر است كه ابتدا آرایه را به یك رشته تبدیل كنید.

 ممكن است شما بخواهید برای تقسیم یك رشته به چند بخش ،این رشته را به آرایه تبدیل كنید و هر یك از بخشها رادر یكی از خانه های آرایه قرار دهید .

از تابع explode  به صورت زیر استفاده می شود :

$Array = explode ($separator , $string) ;

منظور از $separator كاراكتری است كه مرز هر بخش از رشته را برای قرار گرفتن در یك خانه آرایه ،مشخص می كند .این كاراكتر معمولا كاما ویا یك فاصله خالی انتخاب می شود . در این دو صورت :

$Array= explode (“,”, $string) ;

$Array= explode (“ ”, $string) ;

برای تبدیل آرایه به رشته نیز شما باید یك كاراكتر رامشخص كنید  كه به هنگام تبدیل بین مقادیر آرایه قرار بگیرد.

$Array= implode (“ , ”, $string) ;

$Array= implode (“ ”, $string) ;

 عبارت های منظم

عبارت منظم را می توان به صورت یك سیستم برای اعمال یك طرح یا قالب در نظر گرفت .ابتدا شما این طرح را ایجاد می كنید سپس با استفاده از یكی از توابع از پیش ساخته شد ه php ،آن را با یك متن متناظر می كنید .

ایجاد یك طرح

شما قبل ار استفاده از یكی از توابع php برای متناظر كردن طرح خود باید این طرح را ایجاد كنید . برای ایجاد یك طرح ،ابتدا ایجاد به این خواهید داشت كه با سمبلهایی كه به كار خواهید برد آشنا شوید . سپس چگونگی  گروه بندی این كاراكتر ها را شرح می دهیم و در پایان نیز با كلاسها آشنا می شوید.

فوق كاراكترها

فوق كاراكترها در واقع سمبلهایی ویژه هستند كه دارای یك مفهوم و معنای خاص می باشند . برای مثال اولین فوق كاراكتر ، نقطه است  (.)كه با هر كاراكتری متناظر می شود یك نكته جالب و مهم كه در مورد فوق كاراكتر ها وجود دارد این است كه برای اشاره به خود فوق كاراكترها و استفاده از آنها باید از یك علامت (\) استفاده كرد .

تمام فوق كاراكترها را می توان تقریبا با لیست زیر نمایش داد .

 

كاراكتر های ویژه برای عبارت های منظم

كاراكتر ها

متناظر می شوند با

.

هر كاراكتری

^a

رشته ای كه با  aشروع می شود .

A$

رشته ای كه به  aختم می شود

A+

حداقل یك a

A?

صفر و یا یك a

\n

خط جدید

(ab)

گروه ab

a\b

aویاb

A{2}

Aa

[a_z]

حروف كوچك

[A_Z]

حروف بزرگ

[0_9]

ارقام

 متناظر كردن طرح ها

در PHP دو تابع از پیش ساخته شده  برای متناظر كردن یك طرح با یك رشته وجود دارد :

 Ereg()وeregi() تنها تفاوت این دو در این است كه تابع اول نسبت به بزرگ وكوچك بودن حروف حساس است در حالی كه تابع دوم این طور نیست .اگر طرح با رشته متناظر باشد ،نتیجه بازگشتی true  می باشد . در غیر این صورت مقدار بازگشتی false است . در كد زیر دو روش برای استفاده از این روش ارائه شده است :

Ereg(“pattern” ,”string”) ;

صفحه‌ي بعد  صفحه‌ي قبل

 

Copyright 2004 - 2006 Iman Niki Borujeny . All rights reserved .