Yes, there must be matching number of "feature_name[]" and "feature_value[]" parameters. And the order is important. However, you don't need to "front-load" "feature_name[]" parameters if you don't want to. We just do that because it makes more sense from a computational speed point-of-view.
So, this:
&feature_name[]=feat1&feature_value[]=val1&feature_name[]=feat2&feature_value[]=val2
Is equivalent to this:
&feature_name[]=feat1&feature_name[]=feat2&feature_value[]=val1&feature_value[]=val2
Do whatever is easier for you.