views:

1691

answers:

6

In PHP

I have a string, how do I convert it to an array?

After manipulating that array, how do I again make it into a string?

Do strings in PHP behave the same way as in Java?

is there a dupe for this?

thanks in advance

+3  A: 

explode ( string $delimiter , string $string [, int $limit ] )

... and after changes ...

implode ( string $glue , array $pieces )

check out http://www.php.net/explode
and http://www.php.net/implode

You can also use split or join which, as far as I know, support regex

j3frea
what to write in $delimiter and $glue if i want to break into just single characters and back?
OrangeRind
see Gabriel Sosa's comment
j3frea
A: 

In PHP you can split and join. Don´t know how Java behaves.

anddoutoi
Ahh, maybe you meant what Gabriel Sosa is talking about ^^ then don´t mind my answer =P
anddoutoi
A: 

in php you can use:

split like

Description

array split ( string $pattern , string $string [, int $limit ] )

Splits a string into array by regular expression.

or

implode

<?php

$array = array('lastname', 'email', 'phone');
$comma_separated = implode(",", $array);

echo $comma_separated; // lastname,email,phone

?>
Haim Evgi
+5  A: 

as in C, strings are arrays in php

then

<?php
$a = "hola";

foreach($i=0; $i < strlen($a); $i++) {
 echo $a[$i] . "\n";

}

$a[2] = "-"; // will print ho-a
?>

what operation do you want to do?

Gabriel Sosa
if they behave link C strings that will do. I want to filter out certain characters out of a string (not all occurences). thanks.
OrangeRind
i think explode and implode would be the more performant solution.
Hippo
In this instance, if one wants to edit specific characters of a string then I think treating it like a character array may be easier and certainly more elegant.
j3frea
I know this isn't performant.. but what I wanted to show.. is the WAY you can drive arrays in php
Gabriel Sosa
A: 

In Java, you can do:

String.tocharArray() which converts the string into an array of characters. You can do a String.split(regex) to split by a regular expression, returning a String array. A char array or String array can be looped on easily to convert back to a string.

I'm not sure what you mean by "do they behave the same". Essentially they provide the same functionality... however in Java a String is an object that can be iterated upon if need be.

AlbertoPL
i mean like in C/C++ they are actually arrays and no such thing as a string like in java. so whats the situation in php. I think Gabriel Sosa did it.thanks
OrangeRind
A: 

In PHP Strings can be accessed like arrays.

e.g. $my_string = 'abcdef';

$my_string[0] ==> 'a' $my_string[1] ==> 'b'

If you want to convert a series of words into an array then use explode(' ',$my_string);

Note: Strings in PHP are not the same as Java. In PHP they can also represent the contents of any file.

You can learn almost anything there is to know by checking the documentation :)

Regards,

andreas
exploding by ' ' <space doesn't do and exploding by '' <no-space> gave an error. documentation becomes too tacky for me to understand. Human explaining touch makes it more easier to learn. ;)
OrangeRind