En forskydning fejl i PHP er en fatal fejl, der opstår , når du forkert forsøger at bruge en indeksværdi for et array på en streng variabel . Når denne fejl opstår , udførelsen af dine PHP -program stopper og din browser viser en fejlmeddelelse beskriver problemet , og hvor den fandt sted . Løsninger åbne for dig betyde, at andre ændringer, såsom at variabelnavne. Arrays og Strings
En streng er en række tegn i anførselstegn , såsom et navn eller en sætning. Du kan bruge bogstaver, tal eller tegnsætning i en streng . Et array er en sekvens af objekter eller værdier , der knytter hvert element på en tast. Du kan medtage flere forskellige datatyper i et array , herunder strygere, heltal eller booleske værdier. I PHP , får du værdien af en streng variabel ved hjælp af variablen navn, men for at bruge et array værdi , er du nødt til at kalde den ved hjælp af et indeks nummer.
Offset Fejl
< br >
PHP , får du den " fatal fejl: kan ikke bruge strengen offset som en matrix " fejl , når du forsøger at bruge en streng variabel som et array. For eksempel kan du oprette en streng kaldet " $ myvar " og tildele en værdi til det. Hvis du forsøger at få værdien ved at skrive " $ myvar [0] " (eller et andet indeks, værdi) , vil PHP returnere offset fejl, fordi den ikke kan finde indekset værdien i hukommelsen , fordi - teknisk - indekset findes ikke.
resolutioner
For at undgå at se denne fatale PHP fejl, kan du bruge " array ( )" sprog konstruere at re- kaste en streng variabel som en matrix . Dette vil dog slette enhver værdi indehaves af strengvariabel på det tidspunkt. Alternativt kan du oprette en anden variabel som en matrix og kopiere værdien fra strengen til en af sine indekser. Dette bevarer værdien i strengen , men betyder, at du nødt til at bruge et andet variabelnavn få adgang til det , så hvis du bruger denne variabel andetsteds i programmet, vil du nødt til at ændre navnene i disse placeringer.
Salg Overvejelser
Nogle browsere vil forsøge at kompensere for denne fejl ved at forsøge at gætte den værdi, du ønsker i din PHP program. For eksempel, hvis du opretter en streng kaldet " $ myString " med " My string" som værdi og derefter skrive "$ myString [3] " for at få den fjerde indeks fra det , kan det vende tilbage lige bogstavet " , s ", som er det fjerde tegn i strengen . Mens dette ikke forårsager en fatal fejl , kan dette skade din program samlet .