Allora, vediamo un po'...
Ho questo file di INPUT, di 15 righe in ognuna delle quali ci sono dai 2 ai quattro numeri separati da spazi bianchi.
Ogni riga ha per me un significato preciso, ad esempio la posizione dei nodi-vertici, l'altezza dei pilastri...

codice:
4221370 0.000001
700 700 700
15 15 15
1260000 1260000 1260000
1970 1970
132 132
66 66
8202581 8202581
600 600 600
100 100 100
266.0 266.0
0 0
0 40800 0
15 0
50000 125000 50000 125000
Ciò che voglio è estrarre il contenuto di quel file e mettere ogni numero in una variabile. I nomi delle variabili sono obbligati nella mia struttura mentale.

Ho provato col VECTOR (Pensare in C++ capitolo 2), ottenendo nel file di OUTPUT una serie di linee ognuna delle quali contiene un solo numero.
Da qui potrei forse tirare fuori le mie variabili? Sempre che sia un VECTOR/ARRAY e quindi che possa accedere ai suoi indici
Codice PHP:
// Spezza un file in parole separate da spazi bianchi
#include <string>
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;

int main() {
    
vector<floatnum_input;
    
ifstream in("INPUT.portale");         // Apre in lettura
    
ofstream out("OUTPUT.portale");     // Apre in scrittura
    
float numeri;
    while(
in >> numeri){                //prende in input un numero alla volta fino a finefile
        
num_input.push_back(numeri);     //aggiunge ogni elemento numero alla fine del vector
    
}
    for(
int i 0num_input.size(); i++){
        
out << num_input[i] << endl;    //manda in output in ordine di indice del vector
        
cout << num_input[i] << endl;    //manda in output alla shell
    
}
    
cin.get();
///:~ 
In PHP ciò lo facevo così, con poche istruzioni (scusate,l'identazione mi manda i caratteri a capo in malo modo ):

Codice PHP:
<?
//in PHP il simbolo $ precede il nome delle variabili
$nomefile="INPUT";
$fileextension="$nomefile".".portale";

//funzione che mette tutto il contenuto del file INPUT in array ARRAYRIGHE
//ogni elemento dell'array contiene le righe/linee del file di input
//senza riconoscere gli spazi bianchi di separazione dei numeri
$arrayrighe=file($fileextension); 

$numerorighe=count($arrayrighe);  //conta le righe dell'ARRAYRIGHE

IF ($numerorighe==15){
    
//LIST assegna ongi singolo elemento dell'ARRAYRIGHE ad una variabile
    //di tipo array dichiarata nella lista e nell'ordine dato
    
list($riga01$riga02$riga03$riga04$riga05$riga06$riga07$riga08$riga09$riga10$riga11$riga12$riga13$riga14$riga15)=$arrayrighe;
    
//EXPLODE i mini array estratti prendendone i singoli elementi
    //in variabili
    
$riga01=explode(" ",$riga01);$E=$riga01[0];  $alfa=$riga01[1];
    
$riga02=explode(" ",$riga02);$H1=$riga02[0]; $H2=$riga02[1];  $H3=$riga02[2];
    
$riga03=explode(" ",$riga03);$e1=$riga03[0]; $e2=$riga03[1];  $e3=$riga03[2];
    
$riga04=explode(" ",$riga04);$I1=$riga04[0]; $I2=$riga04[1];  $I3=$riga04[2];
    
$riga05=explode(" ",$riga05);$l1=$riga05[0]; $l2=$riga05[1];
    
$riga06=explode(" ",$riga06);$ht1=$riga06[0];$ht2=$riga06[1];
    
$riga07=explode(" ",$riga07);$et1=$riga07[0];$et2=$riga07[1];
    
$riga08=explode(" ",$riga08);$It1=$riga08[0];$It2=$riga08[1];
    
$riga09=explode(" ",$riga09);$hc1=$riga09[0];$hc2=$riga09[1]; $hc3=$riga09[2];
    
$riga10=explode(" ",$riga10);$ec1=$riga10[0];$ec2=$riga10[1]; $ec3=$riga10[2];
    
$riga11=explode(" ",$riga11);$g1=$riga11[0]; $g2=$riga11[1];
    
$riga12=explode(" ",$riga12);$q1=$riga12[0]; $q2=$riga12[1];
    
$riga13=explode(" ",$riga13);$qv=$riga13[0]; $Fv=$riga13[1];  $Fs=$riga13[2];
    
$riga14=explode(" ",$riga14);$Dt=$riga14[0]; $Dt1=$riga14[1];
    
$riga15=explode(" ",$riga15);$p1=$riga15[0]; $p2=$riga15[1];  $p3=$riga15[2];  $p4=$riga15[3];
    
    
//istruzioni mie di debug per conrollare il numero di elementi
//se volete potete saltarle...per il momento
    
IF(count($riga01)!=2){die("FILE INPUT struttura errata: Riga 01");}
    IF(
count($riga02)!=3){die("FILE INPUT struttura errata: Riga 02");}
    IF(
count($riga03)!=3){die("FILE INPUT struttura errata: Riga 03");}
    IF(
count($riga04)!=3){die("FILE INPUT struttura errata: Riga 04");}
    IF(
count($riga05)!=2){die("FILE INPUT struttura errata: Riga 05");}
    IF(
count($riga06)!=2){die("FILE INPUT struttura errata: Riga 06");}
    IF(
count($riga07)!=2){die("FILE INPUT struttura errata: Riga 07");}
    IF(
count($riga08)!=2){die("FILE INPUT struttura errata: Riga 08");}
    IF(
count($riga09)!=3){die("FILE INPUT struttura errata: Riga 09");}
    IF(
count($riga10)!=3){die("FILE INPUT struttura errata: Riga 10");}
    IF(
count($riga11)!=2){die("FILE INPUT struttura errata: Riga 11");}
    IF(
count($riga12)!=2){die("FILE INPUT struttura errata: Riga 12");}
    IF(
count($riga13)!=3){die("FILE INPUT struttura errata: Riga 13");}
    IF(
count($riga14)!=2){die("FILE INPUT struttura errata: Riga 14");}
    IF(
count($riga15)!=4){die("FILE INPUT struttura errata: Riga 15");}
    }ELSE{
    die(
"FILE INPUT struttura errata: NUMERO DI RIGHE");
}
?>