PHP Errore fatale: non è possibile utilizzare String Offset come un array

February 19

Un errore di offset in PHP è un errore fatale che si verifica quando si tenta di utilizzare in modo non corretto un valore di indice per un array su una variabile stringa. Quando si verifica questo errore, l'esecuzione del programma PHP si ferma e il browser visualizza un messaggio di errore che descrive il problema e dove si è verificato. Soluzioni aperte al intendi fare altri cambiamenti, come per i nomi delle variabili.

Array e stringhe

Una stringa è una sequenza di caratteri racchiusi tra virgolette, ad esempio un nome o una frase. È possibile utilizzare lettere, numeri o segni di punteggiatura in una stringa. Un array è una sequenza di oggetti o valori che associa ogni voce a un tasto. È possibile includere diversi tipi di dati in un array, tra cui stringhe, interi o valori booleani. In PHP, si ottiene il valore di una variabile stringa utilizzando il nome della variabile, ma di utilizzare un valore di array, si deve chiamare utilizzando un numero di indice.

errore di offset

In PHP, si ottiene il "errore fatale: non è possibile utilizzare compensato come un array stringa" errore quando si tenta di utilizzare una variabile stringa come una matrice. Ad esempio, è possibile creare una stringa chiamata "$ myvar" e assegnare un valore ad esso. Se si tenta di ottenere il valore digitando "$ myvar [0]" (o qualche altro valore di indice), PHP restituirà l'errore di offset, perché non riesce a trovare il valore dell'indice in memoria, perché - tecnicamente - l'indice non lo fa esistere.

risoluzioni

Per evitare di vedere questo errore fatale di PHP, è possibile utilizzare il "array ()" costrutto del linguaggio per ri-lanciare una variabile stringa come una matrice. Tuttavia, questo cancellerà ogni valore contenuto nella variabile stringa al momento. In alternativa, è possibile creare un'altra variabile come un array e copiare il valore dalla stringa di uno dei suoi indici. Ciò preserva il valore della stringa, ma significa che è necessario utilizzare un nome di variabile diverso per accedervi, quindi se si utilizza questa variabile altrove nel programma, si dovrà modificare i nomi in quei luoghi.

considerazioni

Alcuni browser tenterà di compensare questo errore, cercando di indovinare il valore che si desidera nel programma PHP. Ad esempio, se si crea una stringa chiamata "$ mystring" con "la mia stringa" come valore e quindi digitare "$ mystring [3]" per ottenere il quarto indice da essa, potrebbe tornare solo la lettera "s", che è il quarto carattere della stringa. Anche se questo evita che causa un errore fatale, questo potrebbe danneggiare il tuo programma complessivo.