con questo codice che poi dovrai adattare alle tue esignze .. funziona
Codice PHP:
/* assegnazione dinamica delle variabili, convenzione nome variabile:
varCICLO1 -> equivale a VAR1 dell'esempio
varCICLO2 -> equivale a var1 dell'esempio
*/
for($x=$x<=$x++){
    ${
'var'.$x.'1'}=1;
    
/* se decommentato, torna valido
    ${'var'.$x.'2'}='a';
    */
    /* se decommentato, torna NON valido -> assegna a var12 il valore '', a var22-var32-var42 il valore 'a'*/
    
${'var'.$x.'2'}= $x=='':'a';
}

$valido true;
for(
$x=$x<=$x++){
    
$valido &= ${'var'.$x.'1'}==&& ${'var'.$x.'2'}!='';
}

echo (
$valido "VALIDO""NON valido"); 
se ho letto bene quello che ti serve, deve tornare true solo se tutte le coppie sono verificate, ovvero tutte le VARx devono essere 1 e tutte le varX devono essere ''
Se ne deve essere verificata solo una, va impostata a false la var $valido e nel ciclo for anzichè &= va messo |=