Ho creato una funzione che trova tutti gli URL all'interno di un file html e ripete lo stesso processo per ogni contenuto html collegato agli URL rilevati. La funzione è ricorsiva e può continuare all'infinito. Tuttavia, ho posto un limite alla ricorsione impostando una variabile globale che provoca l'arresto della ricorsione dopo 100 ricorsioni.
Tuttavia, php restituisce questo errore:
Errore irreversibile: livello massimo di annidamento della funzione di '100' raggiunto, interruzione! in D: \ wamp \ www \ crawler1 \ simplehtmldom_1_5 \ simple_html_dom.php sulla linea 1355
Ho trovato una soluzione qui: aumentare il limite di chiamate della funzione di nidificazione, ma nel mio caso non funziona.
Sto citando una delle risposte dal link sopra menzionato. Per favore, consideralo.
"Hai Zend, IonCube o xDebug installato? In tal caso, probabilmente è da lì che ricevi questo errore.
Mi sono imbattuto in questo alcuni anni fa e alla fine è stato Zend a porre quel limite lì, non PHP. Ovviamente rimuoverlo ti farà superare le 100 iterazioni, ma alla fine colpirai i limiti di memoria ".
C'è un modo per aumentare il massimo livello di annidamento delle funzioni in PHP