PHP/Andmetüübid

< PHP

PHP-s on kaheksa andmetüüpi:

  • tõeväärtus
  • täisarv
  • ujukomaarv
  • sõne
  • massiiv
  • objekt
  • resurss
  • null

sõne

muuda

Sõne (string) on suvaline märgijada (tekst).

Sõne saab luua kolmel viisil:

  • ülakomade abil
  • jutumärkide abil
  • heredoc süntaksi abil


ülakomade abil

muuda

Kergeim viis sõne loomiseks on kasutada ülakomasid (' märk). Kasutades ülakomasi asendatakse sõnes ära ainult langjoonega tähistatud ülakomad. Langjoone ette teise langjoone panemine tühistab esimese langjoone mõju.

<?php
echo 'ab ' cd<br>'; //Annab veateate
echo 'ab \' cd<br>'; //Väljastab: ab ' cd
echo 'ab \\' cd<br>'; //Annab uuesti veateate
echo 'ab \\ cd<br>'; //Väljastab: ab \ cd
echo 'ab \\\\ cd<br>'; //Väljastab: ab \\ cd
?>

Ülakomade puhul on ainsad sõnes asendatavad süntaksid \' ja \\.

<?php
    echo 'olen sõne';

    echo 'sõne võib
olla mitme-
realine';

    // kui soovida ülakomades omakorda ülakoma kasutada, 
    // tuleb kasutada põgemist alltoodud viisil:
    echo 'olen\'d ikke, siin pole midagi keerulist';

    // väljastab: ülakomades ei saa kasutada erimärke nagu \n või \t
    echo 'ülakomades ei saa kasutada erimärke nagu \n või \t';

    // väljastab: samuti ei ole ülakomades võimalik kasutada $muutujaid
    echo 'samuti ei ole ülakomades võimalik kasutada $muutujaid';
 ?>

jutumärkide abil

muuda

Luues sõne jutumärkide (") abil on võimalik kasutada järgnevaid erimärke:

\n reavahetus
\r tagasijooks
\t tabeldus
\\ \ (kaldkriips)
\$ dollari-märk
\" jutumärk
\[0-7]{1,3} regulaaravaldisele vastav märk kaheksandkujul
\x[0-9A-Fa-f]{1,2} regulaaravaldisele vastav märk kuueteistkümnendkujul

(TODO: ühenda need kaks tabelit.)

\nlinefeed (LF või ASCII kood: 0x0A (10) )
\rcarriage return (CR või ASCII kood: 0x0D (13) in ASCII)
\thorisontaalne tabulatsioon (HT või ASCII kood: 0x09 (9))
\vvertikaalne tabulatsioon (VT või ASCII kood: 0x0B (11)) (alates PHP 5.2.5)
\fform feed (FF või ASCII kood: 0x0C (12)) (alates PHP 5.2.5)
\\langjoon
\$dollari märk
\"jutumärgid
\[0-7]{1,3}Regulaaravaldisele vastav sõne järjekorranumbriga kaheksandsüsteemis
\x[0-9A-Fa-f]{1,2}Regulaaravaldisele vastav sõne järjekorranumbriga 16nd-süsteemis

Juhul, kui sõnes on dollarimärk, hakkab PHP otsima ahnelt dollarimärgi tagant muutuja nimeks sobivat sõne, mille asendab vastavanimelise muutuja väärtusega, kui see eksisteerib.

<?php

$muutuja = 'rebane';

$s6ne = "Suur punane $muutuja hüppas üle koera";
echo $s6ne;

/* Väljastab: Suur punane rebane hüppas üle koera */


$s6ne2 = "Suur punane $muutuja2 hüppas üle koera";
echo $s6ne2;

/* Väljastab ahne otsimise tõttu: Suur punane hüppas üle koera */

?>