/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
PHP julekalender - kodedebat...
Fra : Jesper Brunholm


Dato : 10-12-02 09:16

Hej folks

Jeg følger med i Morten Blinksbjergs PHP-julekalender på
<http://mbn.dk/julekalender/>, og har flere gange haft lyst til at
debattere noget af det han skrev.

Når har åbnet tråden med det subject som jeg har, er det for at der er
plads til at debattere flere af dagene end lige en enkelt i tråden.

Mit første væsentlige problem/spørgsmål var den 6/12 :
<http://mbn.dk/julekalender/6-2000>

Her foreslås det at trække dele af en tekststreng ud som om strengen var
et array:
"""
<?php
$str = 'Morten';
print $str[0];
?>

Vil resultere i et 'M'.
/"""

1) Jeg mener at kunne huske at det faktisk er en forkert brug (men kan
ikke lige finde referencen i manualen)?

2) er substr() ikke mindst lige så god og effektiv? (<www.php.net/substr/>)

mvh

Jesper Brunholm

--
H.C. Andersen-Centret med nyt design: <http://www.andersen.sdu.dk/>
Phønix - dansk folk-musik fra unge musikere - <http://www.phonixfolk.dk/>


 
 
Niels Andersen (10-12-2002)
Kommentar
Fra : Niels Andersen


Dato : 10-12-02 09:23

Jesper Brunholm wrote in <3DF5A2C6.4020102@brunholm-scharff.dk>:
> $str = 'Morten';
> print $str[0];
> Vil resultere i et 'M'.

> 1) Jeg mener at kunne huske at det faktisk er en forkert brug (men kan
> ikke lige finde referencen i manualen)?

String access by character
Characters within strings may be accessed by specifying the zero-based
offset of the desired character after the string in curly braces.

Note: For backwards compatibility, you can still use array-braces for the
same purpose. However, this syntax is deprecated as of PHP 4.

- http://www.php.net/manual/en/language.types.string.php

> 2) er substr() ikke mindst lige så god og effektiv?
> (<www.php.net/substr/>)

Tjah, vurder selv:

$forbogstav = $str{0};
$forbogstav = substr($str, 0);

Substr() kan mere, men hvis man ikke har brug for det, så er det andet
nemmere, synes jeg i hvert fald.

--
Mvh.

Niels Andersen
(la nels. anersyn.)

Anders Johannsen (10-12-2002)
Kommentar
Fra : Anders Johannsen


Dato : 10-12-02 23:35

"Niels Andersen" <niels-usenet@myplace.dk> wrote in message
news:qvhJ9.63156$HU.4667907@news010.worldonline.dk...

> Substr() kan mere, men hvis man ikke har brug for det, så er det andet
> nemmere, synes jeg i hvert fald.

[] notationen opfører sig dog ret inkonsistent i forbindelse med håndtering
af indekser, der ikke er er defineret indenfor strengen. Se nedenstående
eksempler:

<?php
$str = "";
$str[0] = "X";
var_dump($str); // array(1) { [0]=> string(1) "X" }

$str = "Y";
$str[0] = "X";
var_dump($str); // string(1) "X"

$str = "Y";
$str[15] = "X";
var_dump($str); // string(16) "Y X"

?>



/A



Jesper Juul-Mortense~ (11-12-2002)
Kommentar
Fra : Jesper Juul-Mortense~


Dato : 11-12-02 01:08

On Tue, 10 Dec 2002 23:34:34 +0100, "Anders Johannsen"
<anders@johannsen.com> wrote:

>[] notationen opfører sig dog ret inkonsistent i forbindelse med håndtering
>af indekser, der ikke er er defineret indenfor strengen. Se nedenstående
>eksempler:

[snip eksempler]

Jeg kan ikke se noget galt...? Den opfører sig helt som forventet jvf.
dine eksempler.

/Jesper

Niels Andersen (11-12-2002)
Kommentar
Fra : Niels Andersen


Dato : 11-12-02 01:15

Jesper Juul-Mortensen wrote in <77cic-mkk1.ln1@news.frostbyte.dk>:
>>[] notationen opfører sig dog ret inkonsistent i forbindelse med
>>[håndtering
>>af indekser, der ikke er er defineret indenfor strengen. Se nedenstående
>>eksempler:
> Jeg kan ikke se noget galt...? Den opfører sig helt som forventet jvf.
> dine eksempler.

Ved 2. og 3. eksempel kan jeg godt se det logiske, men den første opfører
sig ret underligt. Hvor er det anderledes, bare fordi strengen er tom? Hvis
variablen var "null", så kunne det måske forsvares.

Well, sådan er det med typesvage sprog. Ofte gør de som man vil have dem
til, men nogle gange sker der underlige ting.

--
Mvh.

Niels Andersen
(la nels. anersyn.)

Søg
Reklame
Statistik
Spørgsmål : 177519
Tips : 31968
Nyheder : 719565
Indlæg : 6408658
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste