/
  • سوال در مورد str_replace و array

  • بسته شده   امتیاز موضوع:
    • 2 رأی - میانگین امیتازات: 3
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی سوال در مورد str_replace و array
    نویسنده پیام
    HiddeN آفلاین
    13
    ***

    ارسال‌ها: 71
    تاریخ عضویت: ۱۳۸۸ مرداد ۲۷
    اعتبار: 0
    تشکرها : 336
    ( 74 تشکر در 30 ارسال )
    ارسال: #1
    سوال در مورد str_replace و array
    سلام .

    داشتم تایپکی که v0id عزیز باز کرده بودند و درباره ی توابع توضیح میدادند رو مطالعه میکردم - با این که کار کرد str_replace رو ميدونم گفتم کار از محکم کاری که عیب نمیکنه شاید ازش تونستیم چیز جدیدی یاد بگیریم . رسیدم به مثال اخری که زده شده بود :

    http://forum.iranphp.org/Thread-%D9%85%D...58#pid3458

    یعنی این :

    کد PHP:
    <?php
    // Outputs: apearpearle pear
    $letters = array('a''p');
    $fruit   = array('apple''pear');
    $text    'a p';
    $output  str_replace($letters$fruit$text);
    echo 
    $output;
    ?>

    این چی شد که به این صورت در اومد ؟ چند روزه فکرم رو مشغول کرده و به نتیجه ای نرسیدم . خواهش میکنم مبتدیانه توضیح بدید که خوب متوجه بشم .


    با تشکر Heart
    ۱۳۸۸ آبان ۱۴ ۱۲:۱۹ صبح
    یافتن ارسال‌ها
     تشکر شده توسط :
    amir.s آفلاین
    عضو
    ***

    ارسال‌ها: 145
    تاریخ عضویت: ۱۳۸۷ دي ۱
    اعتبار: 3
    تشکرها : 453
    ( 186 تشکر در 99 ارسال )
    ارسال: #2
    RE: سوال در مورد str_replace و array
    سلام

    سادست . به منوال یه نگاه بنداز توضیحات خوبی داده . البته تاپیک علیرضا ترجمه همون هست.
    کد:
    http://ir.php.net/manual/en/function.str-replace.php

    در کدی که گذاشتی ، $letters آرایه ای هست که مقداریش رو در رشته مورد نظر $text جستجو میکنه و در صورت پیدا کردن با مقادیر $fruit جایگزین میکنه.

    در واقع تو مثالی که زدی ، رشته Text رو از چپ به راست میگرده و هرجا با حروف a ویا b برخورد کرد ، مقدار متناظرش یعنی apple و pear رو قرار میده .

    آرایه جستجو (search) نسبت به آرایه جایگزین (replace) می تونه رابطه چند به یک و یا یک به یک داشته باشه و ...
    ۱۳۸۸ آبان ۱۴ ۰۲:۳۳ صبح
    یافتن ارسال‌ها
     تشکر شده توسط :
    HiddeN آفلاین
    13
    ***

    ارسال‌ها: 71
    تاریخ عضویت: ۱۳۸۸ مرداد ۲۷
    اعتبار: 0
    تشکرها : 336
    ( 74 تشکر در 30 ارسال )
    ارسال: #3
    RE: سوال در مورد str_replace و array
    مرسی از پاسختون .

    اما برای مثال . الان اینجا میاد توی letters$ كه a و b هست رو از توی text$ سرچ میکنه و با fruit$ جايگزین میکنه . خوب اگه بخوایم اینجوری پیش بریم که باید حرف اول apple باشه چون که a رو پیدا کرده و باید با apple جايگزین کنه اما اینجا ouput ما apear هست اولش ... Huh

    نمیدونم سوالم رو متوجه شدید یا نه ؟
    ۱۳۸۸ آبان ۱۴ ۰۲:۴۹ عصر
    یافتن ارسال‌ها
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,697
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6197 تشکر در 3438 ارسال )
    ارسال: #4
    RE: سوال در مورد str_replace و array
    خروجی مثال بالا apearpearle pear هست
    دلیل:
    اول میاد به جای a کلمه apple رو جایگزین می کنه. حالا رشته ما شده apple p حالا میاد به جای p در رشته apple p رشته pear رو اضافه می کنه پس نتیجه میشه apearpearle pear
    ۱۳۸۸ آبان ۱۴ ۰۵:۲۹ عصر
    یافتن ارسال‌ها
     تشکر شده توسط : HiddeN
    amir.s آفلاین
    عضو
    ***

    ارسال‌ها: 145
    تاریخ عضویت: ۱۳۸۷ دي ۱
    اعتبار: 3
    تشکرها : 453
    ( 186 تشکر در 99 ارسال )
    ارسال: #5
    RE: سوال در مورد str_replace و array
    رشته Text را از سمت چپ به راست برای هر یک از مقادیر آرایه Search مرور میکنه ؛

    در اولین مرحله رشته 'a p' به 'apple p' تبدیل میشه -> یعنی به جای حرف a کلمه apple جایگزین شد .

    در مرحله بعد رشته 'apple p' رو برای حرف p جستجو میکنه و هر p را با pear جایگزین میکنه => apearpearle pear

    به جای دو p موجود در apple هم pear قرار میده و ...

    لینکی در منوال دادم رو مطالعه کنید کاملا مشخصه . در مثالی که قبل این کد شما زده توضیح داده که به ترتیب این کار ها انجام میشه . Wink
    ۱۳۸۸ آبان ۱۴ ۰۵:۵۴ عصر
    یافتن ارسال‌ها
     تشکر شده توسط : HiddeN
    « قدیمی تر | تازه‌ تر »

    بسته شده
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS