2016-06-06 6 views
0

ich etwas in meiner Datenbank wie gespeichert habe diesePhp String Explode und aus jeder Zeichenfolge setzen, ohne Array zeigt

PHP,HTML,CSS,SQL,JQUERY,.... 

Mehr anzeigen stile können oder es könnte sein 2 oder 1 in Abhängigkeit von am Ende, wie für Strom gespeichert kann Post anzeigen.

Jetzt muss ich Output jede Saite einzeln unter Beispiel siehe

echo $str1; Output = PHP, 

echo $str2; Output = HTML, 

echo $str3; Output = CSS, 

echo $str4; Output = JQUERY, 

ich dies versucht mit, aber ich verstehe nicht, was mir zeigt bitte mit, ich brauche Hilfe es

Hier ist mein Code

<?php 
$str = 'one,two,three,four'; 

print_r(explode(',',$str,0)); 

print_r(explode(',',$str,2)); 

print_r(explode(',',$str,-1)); 
?> 

Und löschte das ist, ist nicht das, was ich will

Array ([0] => one,two,three,four) 
Array ([0] => one [1] => two,three,four) 
Array ([0] => one [1] => two [2] => three) 
+1

uh, warum nicht einfach '$ arr = explodieren (',', $ str)'? Der Standard für 'explode' besteht darin, auf alle übereinstimmenden Elemente zu explodieren. Sie geben nur das 3. Argument an, wenn Sie WENIGER als als 'Alles' wollen. –

+0

Warum nicht einfach die Indizes zurückgeben? Sie könnten auch http://php.net/manual/en/function.str-getcsv.php in Erwägung ziehen, anstatt zu explodieren. – chris85

Antwort

1

Verwenden Array!

<?php 
$str = 'one,two,three,four'; 

$array= explode(',',$str); 

//Print each array element 
//('one' 'two' 'three' 'four' an so on...) 
foreach($array as $element){ 
    echo $element; 
} 
?> 
+0

Diese Antwort ist zu einfach – Micheal

+0

Diese Antwort löst nicht, hat mehr oder kann 1 oder 2 sein. Sie erhalten entweder nicht alle Ihre Ergebnisse oder einen Indexfehler. Sie sollten looping sein. Nicht einmal meine Antwort zu sagen, obwohl ich es @miglio Antwort nicht getestet habe, scheint die beste zu sein. – nerdlyist

+0

@nerdlyist yup, ich weiß. Ich gebe ihm nur eine Möglichkeit Array zu kennen. Miglio Antwort ist die beste Antwort auf seine Frage – weigreen

1

Dies ist richtig explodieren erstellt ein Array und Sie müssen die Elemente Schleife. (Sie brauchen auch nicht wirklich die max int.)

<?php 
$str = 'one,two,three,four'; 
$arr = explode(',',$str); 
foreach($arr as $elem){ 
    echo $elem; 
} 
0

Dies wird helfen, denke ich,

// Example 
$str = 'one,two,three,four'; 
$pieces = explode(',', $str); 
echo $pieces[0]; // one 
echo $pieces[1]; // two 
echo $pieces[2]; // three 
echo $pieces[3]; // four 

//Example 2 
$str = 'one,two,three,four'; 
list($one, $two, $three, $four) = explode(',', $str); 
echo $one; // one 
echo $two; // two 
echo $three; // three 
echo $four; // four 

Mehr Infos Explode PHP.net

4

dies vielleicht versuchen:

$str = 'one,two,three,four'; 
$newstr = explode(',',$str); 

$n = 'str'; //sufix 
$c=1; //counter 
foreach($newstr as $value){ 
    $nn = $n.$c; //assign vars 
    $$nn = $value; //assign value for var 
    $c++; 
} 

var_dump($str1); 
var_dump($str2); 
var_dump($str3); 
var_dump($str4); 

Antwort:

string 'one' (length=3)  
string 'two' (length=3)  
string 'three' (length=5) 
string 'four' (length=4)