$string = "test"; er en variabel af typen string med værdien test. Den tror jeg du er med på.
echo $string[0]; Syntaksen her kan betyde to ting. Første mulighed er at udskrive første værdi i arrayet string - eller at udskrive første char af strengen $string.
$string[] = 'something'; betyder, sæt værdien 'something' ind på næste plads i arrayet $string. Det giver en fejl, hvis $string ikke er et array.
Din $string i eksemplet // : ( er af typen string, og derfor kan du ikke bruge [] operatoren på den. Det kan du i // : ) eksemplet, fordi du har sat den til at være et tomt array.
At dit sidste eksempel virker, overrasker mig egentlig lidt. Og den virker heller ikke som man forventer. Værdien af $string er "test" - så det svarer til at du bare havde skrevet $string = $string...
Hvad er det du prøver at gøre? :-)
Hvis du bare leder efter en optimering af dit andet eksempel, så kan det gøres sådan her:
- <?php
- $string = "test";
-
- // Første gang
- $string = array($string);
-
- // Anden gang
- $string2 = "test2";
- $string[] = $string2;
Det kan du evt pakke ind i en funktion, så du ikke behøver bekymre dig over om det er første el. anden gang du kører koden.
Indlæg senest redigeret d. 05.03.2012 13:27 af Bruger #17015