کار با رشته ها در PHP

شروع موضوع توسط AHMAD ‏Jun 10, 2015 در انجمن PHP

  1. AHMAD

    AHMAD ایران وب ادمین عضو کادر مدیریت ناظر انجمن

    سلام

    از سری تاپیک های آموزش PHP ، در این تاپیک قصد داریم مبحث کار با رشته ها در زبان برنامه نویسی PHP را بررسی کنیم و توابع و نکات مهم مربوط به کار با رشته ها را همراه با مثال بیان کنیم.

    نکات و مثال های مختلف به مرور به تاپیک اضافه می شوند. پس لطفا اگر به مبحث رشته ها در php علاقه دارید این صفحه را Bookmark کنید تا در آینده دسترسی ساده تری به آن داشته باشید.


    رشته ها در زبان php با Single Quotation و یا Double Quotation تعریف می شوند. به عنوان مثال برای قرار دادن یک مقدار رشته ای در یک متغیر می توان به صورت زیر عمل کرد :

    PHP:
    برای مشاهده محتوا بایستی ثبت نام کنید.
    همانطور که دیدیم یک بار با استفاده از Single Quotation و بار دیگر با استفاده از Double Quotation ، دو رشته را در دو متغیر مختلف تعریف کردیم و سپس با استفاده از دستور echo آن ها را در خروجی چاپ کردیم.

    در ادامه نکات مهمی در رابطه با کار با رشته ها بیان خواهد شد و توابعی که می توانند در این زمینه مفید باشند را معرفی خواهیم کرد.



    .
     
  2. AHMAD

    AHMAD ایران وب ادمین عضو کادر مدیریت ناظر انجمن

    نکته 1 :

    در رشته هایی که با استفاده از Double Quotation تعریف می شوند ، متغیرها تفسیر می شوند و مقادیر آن ها جایگزین نام متغیر ها می شوند اما در رشته هایی که توسط Single Quotation تعریف می شوند این اتفاق نمی افتد و هر مقداری که بین دو علامت ' ' قرار بگیرد عینا در خروجی چاپ می شود.

    مثال :
    PHP:
    برای مشاهده محتوا بایستی ثبت نام کنید.
    همانطور که در این مثال مشخص است ، در حالت دوم ، نام متغیر عینا در خروجی چاپ می شود اما در حالت اول متغیر تفسیر شده و مقدار 15 به جای آن چاپ می شود.


    .
     
  3. AHMAD

    AHMAD ایران وب ادمین عضو کادر مدیریت ناظر انجمن

    نکته 2 :

    برای الحاق دو رشته به یکدیگر در زبان php باید از عملوندهای "." و یا "=." استفاده کنیم.

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


    .
     
  4. AHMAD

    AHMAD ایران وب ادمین عضو کادر مدیریت ناظر انجمن

    نکته 3 :

    هنگامی که از Double Quotation جهت تعریف رشته ها و استفاده از متغیرها در داخل رشته استفاده می کنیم ، بهتر است نام متغیر را داخل {} قرار دهیم. این کار دو دلیل دارد :

    1 - تفکیک نام متغیر از کاراکترهای رشته
    2 - خوانایی بهتر برنامه

    مثال :
    کد:
    برای مشاهده محتوا شما بایستی ثبت نام کنید.

    همانطور که در مثال بالا می بینید ، در حالت اول مقدار متغیر در خروجی چاپ نمی شود زیرا نام متغیر ما first$ است و هنگامی که به th می چسبد ، به اشتباه firstth$ در نظر گرفته می شود که چنین متغیری در برنامه فوق تعریف نشده پس در خروجی مقدار آن تهی می باشد و مقداری نمایش داده نمی شود.

    اما در حالت دوم به دلیل استفاده از {} تعیین می کنیم که نام متغیر ما چیست و مقدار آن در خروجی چاپ می شود.


    .
     
  5. AHMAD

    AHMAD ایران وب ادمین عضو کادر مدیریت ناظر انجمن

    نکته 4 :

    در صورتی که بخواهیم از کاراکترهای کنترلی در رشته ها استفاده کنیم ، می بایست نحوه استفاده از آن در زبان php را بدانیم.

    از مهمترین کاراکترهای کنترلی که در رشته ها به کار می روند می توان به موارد زیر اشاره کرد :

    1 - خط جدید : n\

    2 - Tab (تب) : t\

    3 - Backslash (بک اسلش) : \\

    4 - علامت $ : $\

    5 - علامت Single Quote : '\

    6 - علامت Double Quote : "\

    7 - علامت } و یا { : {\ - }\


    مثال :
    PHP:
    برای مشاهده محتوا بایستی ثبت نام کنید.

    تذکر 1 : هنگامی که رشته خود را با استفاده از Single Quotation تعریف می کنید نباید از "\ استفاده کنید و می بایست به جای آن از " (بدون Backslash) استفاده کنید.

    تذکر 2 : هنگامی که رشته خود را با استفاده از Double Quotation تعریف می کنید نباید از '\ استفاده کنید و می بایست به جای آن از ' (بدون Backslash) استفاده کنید.


    .
     
  6. AHMAD

    AHMAD ایران وب ادمین عضو کادر مدیریت ناظر انجمن

    نکته 5 :

    برای دسترسی به کاراکتر n ام از یک رشته می توانیم از یکی از دو عملگر [n] و یا {n} استفاده کنیم.

    مثال :
    PHP:
    برای مشاهده محتوا بایستی ثبت نام کنید.

    .
     
  7. AHMAD

    AHMAD ایران وب ادمین عضو کادر مدیریت ناظر انجمن

    نکته 6 :

    تعریف رشته های طولانی با استفاده از روش heredoc :

    در زبان برنامه نویسی php در صورتی که بخواهیم یک رشته طولانی ایجاد کنیم می توانیم از روش heredoc استفاده کنیم. برای توضیح بیشتر در مورد این روش لطفا به مثال زیر توجه کنید :
    PHP:
    برای مشاهده محتوا بایستی ثبت نام کنید.
    همانطور که مشاهده می کنید برای تعریف رشته به روش heredoc ، می بایست یک شناسه تعریف کنیم که در این مثال EOS نام دارد. شناسه را با استفاده از عملگر >>>= به متغیر نسبت می دهیم و در پایان پس از اتمام رشته مجددا همین شناسه را در ابتدای خط جدید قرار داده و علامت ; پس از آن قرار می دهیم.


    نکات تعریف رشته به روش heredoc :

    1 - اولین کاراکتر بعد از نام شناسه در ابتدای رشته (در مثال بالا Enter زده شده است) و آخرین کاراکتر قبل از نام شناسه در انتهای رشته (در مثال بالا Enter زده شده است) ، از رشته حذف می شوند.

    2 - شناسه پایانی (EOS خط آخر) حتما می بایست در ابتدای خط باشد و هیچ کاراکتری قبل از آن در آن خط وجود نداشته باشد.

    3 - قرار دادن علامت ; پس از شناسه پایانی اختیاری است.

    4 - در صورتی که شناسه ابتدایی رشته (خط اول) داخل Single Quotation قرار گیرد ، متغیرها تفسیر نمی شوند و تمام موارد تایپ شده عینا در خروجی چاپ می شوند (مانند تعریف رشته ها با استفاده از Single Quotation به صورت ساده)


    .
     
  8. AHMAD

    AHMAD ایران وب ادمین عضو کادر مدیریت ناظر انجمن

    نکته 7 :

    با استفاده از تابع ()strlen می توان تعداد کاراکترهای یک رشته را بدست آورد.

    مثال :
    PHP:
    برای مشاهده محتوا بایستی ثبت نام کنید.
    در مثال بالا با استفاده از تابع ()strlen ، حلقه ای ایجاد کردیم که به تعداد کاراکترهای متغیر str$ اجرا شده و هر بار جایگاه کاراکتر در رشته را به همراه نام کاراکتر چاپ می کند.


    .
     
  9. AHMAD

    AHMAD ایران وب ادمین عضو کادر مدیریت ناظر انجمن

    نکته 8 :

    با استفاده از تابع ()strtolower و ()strtoupper به ترتیب می توان تمام کاراکترهای یک رشته را به حروف کوچک و بزرگ تبدیل کرد.

    مثال :
    PHP:
    برای مشاهده محتوا بایستی ثبت نام کنید.

    .
     
  10. AHMAD

    AHMAD ایران وب ادمین عضو کادر مدیریت ناظر انجمن

    نکته 9 :

    با استفاده از تابع ()strpos می توانیم یک کاراکتر یا متن خاص را در رشته جستجو کنیم. خروجی این تابع ، موقعیت اولین کاراکتر متن مورد نظر را در رشته بر می گرداند و اگر متن مورد نظر در رشته وجود نداشت false بر می گرداند.

    مثال :
    PHP:
    برای مشاهده محتوا بایستی ثبت نام کنید.

    .
     
  11. AHMAD

    AHMAD ایران وب ادمین عضو کادر مدیریت ناظر انجمن

    نکته 10 :

    با استفاده از تابع ()trim می توان فضای خالی ابتدا و انتهای یک رشته را حذف کرد.

    مثال :
    PHP:
    برای مشاهده محتوا بایستی ثبت نام کنید.

    نکته 1 : با استفاده از دو تابع ()ltrim و ()rtrim می توان به ترتیب فضای خالی سمت چپ و راست یک رشته را حذف کرد.

    نکته 2 : به صورت پیشفرض با توابع trim کاراکترهای زیر از ابتدا و انتهای رشته حذف می شوند :

    کد:
    برای مشاهده محتوا شما بایستی ثبت نام کنید.
    اما اگر بخواهیم کاراکتر دلخواهمان را از ابتدا و انتهای رشته حذف کنیم ، آن کاراکتر را به عنوان آرگومان دوم تابع ()trim قرار می دهیم.

    مثال :
    PHP:
    برای مشاهده محتوا بایستی ثبت نام کنید.


    .
     

به اشتراک بگذارید

س