php - array permutation with respect to some templates -


i have template :on basis of templates want permutation of array part of template , insert db every 1 element of permutation data acutually value of template dynamically change , number of elements varied means dynamic

  $temp = ['server', 'test[server]', 'extra'];   $temp1 = ['server', 'test[server]'];   $temp2 = ['server']; 

test[server] -: test depends on server; data belongs template:

  $server = ['server1','server2','server3'];   $test = ['server1'=>['test1', 'test2'],             'server2' => ['test4', 'test5'],              'server3' => ['test7']];    $extra = ['a','b','c']; 

i want permutaion :

for template $temp

     ['server'=>'server1', 'test' => 'test1','extra'=>'a']      ['server'=>'server1', 'test' => 'test1','extra'=>'b']      ['server'=>'server1', 'test' => 'test1','extra'=>'c']      ['server'=>'server1', 'test' => 'test1','extra'=>'a']      ['server'=>'server1', 'test' => 'test2','extra'=>'a']      ['server'=>'server1', 'test' => 'test2','extra'=>'b']      ['server'=>'server1', 'test' => 'test2','extra'=>'c']      ['server'=>'server2', 'test' => 'test4','extra'=>'a']      ['server'=>'server2', 'test' => 'test4','extra'=>'b']      ['server'=>'server2', 'test' => 'test4','extra'=>'c']      ['server'=>'server2', 'test' => 'test5','extra'=>'a']      ['server'=>'server2', 'test' => 'test5','extra'=>'b']      ['server'=>'server2', 'test' => 'test5','extra'=>'c']      ['server'=>'server3', 'test' => 'test7','extra'=>'a']      ['server'=>'server3', 'test' => 'test7','extra'=>'b']      ['server'=>'server3', 'test' => 'test7','extra'=>'c'] 

for template $temp1:

     ['server'=>'server1', 'test' => 'test1']      ['server'=>'server1', 'test' => 'test2']      ['server'=>'server2', 'test' => 'test4']      ['server'=>'server2', 'test' => 'test5']      ['server'=>'server3', 'test' => 'test7'] 

for template $temp2:

     ['server'=>'server1']      ['server'=>'server2']      ['server'=>'server3'] 

after every 1 of permutaion element want insert in database: insert table (server,test,extra)values(1 element each not have memory issue because has big array)

so need this? of course, in query change table , field names. can access $newarray array want.

$test = array('server1' => array('test1', 'test2'),     'server2' => array('test4', 'test5'),     'server3' => array('test7') ); $extras = array('a', 'b', 'c');  $newarray = array(); foreach ($test $server => $testarray) {     foreach ($testarray $test) {         foreach ($extras $extra) {             $sql = "insert tbl (server, test, extra)"                 . " values ('".$server."', '".$test."', '".$extra."')";             echo $sql."<br />";             $db->query($sql);             $newarray[] = array("server" => $server, 'test' => $test, 'extra' => $extra);         }     } } 

output is:

insert tbl (server, test, extra) values ('server1', 'test1', 'a') insert tbl (server, test, extra) values ('server1', 'test1', 'b') insert tbl (server, test, extra) values ('server1', 'test1', 'c') insert tbl (server, test, extra) values ('server1', 'test2', 'a') insert tbl (server, test, extra) values ('server1', 'test2', 'b') insert tbl (server, test, extra) values ('server1', 'test2', 'c') insert tbl (server, test, extra) values ('server2', 'test4', 'a') insert tbl (server, test, extra) values ('server2', 'test4', 'b') insert tbl (server, test, extra) values ('server2', 'test4', 'c') insert tbl (server, test, extra) values ('server2', 'test5', 'a') insert tbl (server, test, extra) values ('server2', 'test5', 'b') insert tbl (server, test, extra) values ('server2', 'test5', 'c') insert tbl (server, test, extra) values ('server3', 'test7', 'a') insert tbl (server, test, extra) values ('server3', 'test7', 'b') insert tbl (server, test, extra) values ('server3', 'test7', 'c') 

Comments

Popular posts from this blog

java - Plugin org.apache.maven.plugins:maven-install-plugin:2.4 or one of its dependencies could not be resolved -

Round ImageView Android -

How can I utilize Yahoo Weather API in android -