Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.php > #10718

Re: str_replace & assign to a var?

Path csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!eu.feeder.erje.net!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From "J.O. Aho" <user@example.net>
Newsgroups comp.lang.php
Subject Re: str_replace & assign to a var?
Date Wed, 04 Sep 2013 20:16:07 +0200
Lines 58
Message-ID <b8pbn7Fdg6bU1@mid.individual.net> (permalink)
References <l07qmq$8o0$1@speranza.aioe.org>
Mime-Version 1.0
Content-Type text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding 7bit
X-Trace individual.net FHf7Ik1pXEC3FU2NgWFEoQWDB7DRskW3iF0YlRuWlOAWNWqFBU
Cancel-Lock sha1:hREsNJkYYgoN6+DOlq6dH9bdZ9s=
User-Agent Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130808 Thunderbird/17.0.8
In-Reply-To <l07qmq$8o0$1@speranza.aioe.org>
Xref csiph.com comp.lang.php:10718

Show key headers only | View raw


On 04/09/13 19:29, Twayne wrote:
> Hi Guys & Gals,
>
> If this is a dumb question I apologize but I'm stuck. Yes, I'm
> essentially a newbie to many things yet in PHP.
>
> I have the following canned code:
> ------------
> $arr = array("blue","red","green","yellow");
> print_r(str_replace("red","pink",$arr,$i));
> echo "<br>" . "Replacements: $i";
> -----------
>
> All I want to do is change "red" to "pink" IN the array or a new array.
> How do I do that?
>
>
> In other words, I want to change the original array to have "pink" in it
> instead of "red".
>
> My actual goal is to take a var of "-1111-111-111" to "1111111111" and
> remove the dashes. The appearance of the dashes is essentially random
> but there will only be 3 of them max or even none.
>

Here is an example how to make it neatly and this can be made quite 
dynamic by chancing the function to use for remapping the cell content:

<?php

function filterNumbers($str) {
         return str_replace('-', '', $str);
}

$oldArray=array('1234-1234', '2345-2345', 'ABCD.FGHI', '3456.3456', 
'-0987-0987');

$newArray=array_map('filterNumbers', $oldArray);

var_dump($newArray);

?>

The filterNumbers do the actual work (you can make it a lot more 
advanced, depending on your needs).

then you input the remapping function and the original array as 
arguments and you then get a modified array back.

If you want to remove items in an array, then use the array_filter(), 
the argument order is different and the function needs to return true or 
false.

-- 

  //Aho

Back to comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

str_replace & assign to a var? Twayne <nobody@spamcop.net> - 2013-09-04 13:29 -0400
  Re: str_replace & assign to a var? NEVER MIND Twayne <nobody@spamcop.net> - 2013-09-04 14:00 -0400
  Re: str_replace & assign to a var? "J.O. Aho" <user@example.net> - 2013-09-04 20:16 +0200
    Re: str_replace & assign to a var? Twayne <nobody@spamcop.net> - 2013-09-04 14:52 -0400
    Re: str_replace & assign to a var? Curtis Dyer <dyer85@gmail.com> - 2013-09-05 08:48 +0000
      Re: str_replace & assign to a var? Twayne <nobody@spamcop.net> - 2013-09-05 10:34 -0400

csiph-web