Search code examples
phpincrement

How to increment a variable with some values and reorder the result


I wanted to increment this variable with these values:

$Variable = "AAAA1 VALUE1; \
             BBBB1 VALUE1; \
             CCCC1 VALUE1";

So i made this simple code:

for($i=1; $i<3; $i++) {
$Variable = "AAAA$i VALUE$i; \
             BBBB$i VALUE$i; \
             CCCC$i VALUE$i";
}

And i got this 2 output results:

AAAA1 VALUE1
BBBB1 VALUE1
CCCC1 VALUE1

AAAA2 VALUE2
BBBB2 VALUE2
CCCC2 VALUE2

But what i want, is to get one full result like that:

AAAA1 VALUE1
AAAA2 VALUE2

BBBB1 VALUE1
BBBB2 VALUE2

CCCC1 VALUE1
CCCC2 VALUE2


Solution

  • You can make the string an array and loop each item one by one and build the string inside a for loop similar yours.

    $Variable = "AAAA VALUE
    BBBB VALUE
    CCCC VALUE";
    $startval = 1;
    $endval = 5;
    
    $var = explode("\n", $Variable);
    
    $str = "";
    foreach($var as $v){
        $temp = explode(" " , $v);
        //Loop from startval to endval and build your string
        for($i=$startval; $i<=$endval; $i++){
            $str .= $temp[0] .$i . " " . $temp[1] .$i. "\n";
        }
        $str .= "\n"; // add new line
    }
    
    echo $str;
    

    Output:

    AAAA1 VALUE1
    AAAA2 VALUE2
    AAAA3 VALUE3
    AAAA4 VALUE4
    AAAA5 VALUE5
    
    BBBB1 VALUE1
    BBBB2 VALUE2
    BBBB3 VALUE3
    BBBB4 VALUE4
    BBBB5 VALUE5
    
    CCCC1 VALUE1
    CCCC2 VALUE2
    CCCC3 VALUE3
    CCCC4 VALUE4
    CCCC5 VALUE5
    

    https://3v4l.org/OPA8K