如何拆分字符串并获取特定值

$string = "706AN=0,503-PP=0,504-PP=0,519=0,606BOX=0,417=2"; // This variable is a result from a database column type text

I need to get individually the code before "=" and the result assigned to that code, after "=". The split string should return me something like:

Code 706AN has quantity 0  
Code 503-PP has quantity 0  
Code 504-PP has quantity 0  
Code 519 has quantity 0  
Code 606BOX has quantity 0  
Code 417 has quantity 2

How can I substract each code with his own quantity result?

You can use explode

Working Demo: https://eval.in/869203

$string = "706AN=0,503-PP=0,504-PP=0,519=0,606BOX=0,417=2";
$temp = explode(',', $string);


foreach ($temp as $key => $value) {
    list($code,$quantity) = explode('=', $value);
    echo "Code $code has quantity $quantity </br>";
}
  • 1) Split the String by the "," (comma)
  • 2) loop over the resulting array
  • 2.1)Split the String-part by "="
  • 2.2) First part of the result is the name and the second is the quanitity
  • 2.3) Create a new String ala "Code $name has quantity $qtty"
  • 2.4) Add it to a list, a String or whatever datastructure you like

I can give you a code example later, im in a hurry atm

hth

$string = "706AN=0,503-PP=0,504-PP=0,519=0,606BOX=0,417=2";
$exp = explode(',', $string);

foreach ($exp as $key => $value) {
    $list = explode('=', $value);
    echo "Code $list[0] has quantity $list[1] </br>";
}