String

Erilaisia merkkijonojen käsittelyyn tarkoitettuja funktiota.

Huomaa että, funktioon merkkijono voidaan sijoittaa:
- suoraan tekstinä
- muuttujassa olevana tekstinä
- lähettää teksti lomakekentällä muuttujaan ja sijoittamalla muuttuja funktioon

1. sijoittamalla:

<?php
$muuttuja = addcslashes("Jaska Jussila","J");
echo($muuttuja);

?>


2. muuttujan kautta:

<?php
$muuttuja= "Jaska Jussila";
$muuttuja = addcslashes($muuttuja,"J");
echo($muuttuja);

?>



TÄÄLLÄ

Funktio Selite - esimerkki -tulos
addcslashes() Lisää kauttaviivan ( \ ) tekstiin halutun kirjaimen eteen.

<?php
$teksti1 = addcslashes("Jaska Koskinen ","J");
echo($teksti1);
?>


Tulos:
\Jaska Koskinen
addslashes() Lisää kauttaviivan tekstiin lainnausmerkein ilmoitettuun kohtaan.

<?php
$teksti2 = addslashes('Sana "seppo" on..');
echo($teksti2);
?>


Tulos:
Sana \"seppo\" on..
bin2hex() Muutta ASCII-merkkijono heksadesimaaliseksi merkkijonoksi.

<?php
$teksti3 = bin2hex("Arto Aallokko !");
echo($teksti3);
?>


Tulos:
4172746f2041616c6c6f6b6b6f2021
chop() Siirtää välilyönnin tai merkit oikealle merkkijonon loppuun.

<?php
$teksti4 = "Näkyy nämä ei!";
echo $teksti4 . "<br>";
echo chop($teksti4,"nämä ei !");
?>


Tulos:
Näkyy nämä ei!
Näkyy
chr() Palauttaa desimaali-, oktaali- tai heksalukuna annetut merkit ASCII muotoon.

<?php
echo chr(54) . "<br>"; // Desimaali
echo chr(054) . "<br>"; // Oktaali
echo chr(0x54) . "<br>"; // Heksa
?>


Tulos:
6
,
T
chunk_split() Merkkijonon katkaisu osiin, esimerkiksi kirjainten väliin välilyönnin lisääminen. Funktiossa annetaan:
1. muuttujassa merkkijono,
2. numerona merkkien väli,
3. lisättävä merkki.

Huom ! Ongelmallinen skandinaavisten kirjainten yhteydessä.

<?php
$teksti5 = "Teksti on harvennettuna!";
echo chunk_split($teksti5,1," ");
?>


Tulos:
T e k s t i o n h a r v e n n e t t u n a !
convert_cyr_string() Muuttaa kyyriläisiksi merkeiksi asetuksilla w (windows-1251), a (x-cp866).

Meidän suomalaisten www-sivujen tekijöiden kannalta ko funktiolle ei paljoa käyttöä löydy.

Katso esimerkki täältä.
convert_uudecode() Koodaa ("muuntaa") merkkijonon uuen-koodatuksi, ja takaisin merkkijonoksi (Unix:n tarkoitettu, eräänlainen salaus). Katso tarkemmin täältä.

<?php
$teksti6 = "Salattu teksti !";
/* merkkijonon koodaus, enkoodaus */
$koodattu = convert_uuencode($teksti6);
echo $koodattu . "<br>";
/* koodauksen purku merkkijonoksi, dekoodaus */
$dekoodattu = convert_uudecode($koodattu);
echo $dekoodattu;
?>


Tulos:
04V%L871T=2!T96MS=&D@(0`` `
Salattu teksti !
convert_uuencode() Katso esimerkki yllä.
count_chars() Palauttaa tietoja merkkijonon merkeistä. Viisi erilaista moodia (asetusta), katso tarkemmin täältä.

<?php
$teksti7 = "Testiteksti!";
echo count_chars($teksti7,3);
?>


Tulos:
!Teikst
crc32() Laskee merkkijonosta 32-bitttisen tarkistussumman (CRC), tarkistussumman avulla voidaan tarkistaa esimerkiksi lomakkeesta lähetetyn merkkijonon oikeellisuus.

<?php
$str = crc32("Merkkijonon tarkistus.");
printf("%u\n",$str);
?>


Tulos:
1823865988
crypt() Eräs merkkijonojen tarkistamiseen käytetty funktio, katso tarkemmin täältä
echo() Merkkijonon näyttäminen www-sivulle.

<?php
echo "Tähän näytettävät merkit";
?>
explode() Katkaisee merkkijonon funktiossa ilmoitetun merkin kohdalta ja sijoittaa esimerkiksi sanat taulukkoon. Katso lisää moodeista täältä.

<?php $teksti9 = "Merkkijono voidaan katkoa välilyöntien kohdalta."; print_r (explode(" ",$teksti9)); ?>

Tulos:
Array ( [0] => Merkkijono [1] => voidaan [2] => katkoa [3] => välilyöntien [4] => kohdalta. )
fprintf() Merkkijonon tulostaminen erilaisissa muodoissa. Katso laajempi esimerkki täältä
get_html_translation_table() Palauttaa käännöstaulukon käytettäessä htmlspecialchars() ja htmlentities() moodeja . Katso täältä tarkemmin.
hebrev() Muuttaa hebrean-kielisen tekstin visuaaliseksi tekstiksi.
hebrevc() Muuttaa hebrean-kielisen tekstin visuaaliseksi tekstiksi rivinvaihtoineen.
hex2bin() Muuttaa heksadesimaalimuodossa olevan merkkijonon ascii-merkkijonoksi.

<?php
echo hex2bin("48656c6c6f20576f726c6421");
?>


Tulos:
Hello World!
html_entity_decode() HTML-merkkien muuttaminen merkeiksi. Katso täältä.
htmlentities() Merkkien muuttaminen HTML-merkeiksi. Katso täältä.
htmlspecialchars_decode() Muuntaa ennalta määriteltyjä HTML-merkkejä merkeiksi. Katso täältä.
htmlspecialchars() Muuntaa merkkejä HTML-merkeiksi. Katso täältä.
implode() Palauttaa taulukossa olevat merkkijonot esimerkiksi näytettäväksi yhtenäisenä tekstinä www-sivulla.

<?php
$taulu1 = array('Aurinko','ja on lämmintä.');
echo implode(" ",$taulu1);
?>


Tulos:
Aurinkoista ja on lämmintä.
join() Katso edellinen esimerkki. Huomaa, funktion suluissa alussa on käytetty välilyöntiä erottamaan sanoja toisistaan, ko kohdassa voidaan käyttää muitakin merkkejä.
lcfirst() Muuttaa merkkijonon ensimmäisen kirjaimen pieneksi kirjaimeksi (lowercase)

<?php
echo lcfirst("Aamuaurinko Paistaa!");
?>


Tulos:
aamuaurinko Paistaa!
levenshtein() Returns the Levenshtein distance between two strings. ???

<?php
echo levenshtein("Hello World","ello World");
echo "<br>";
echo levenshtein("Hello World","ello World",10,20,30);
?>


Tulos:
1
30
localeconv() "Returns locale numeric and monetary formatting information". Katso tarkemmin täältä
ltrim() Poistaa välilyönnin tai merkkejä merkkijonon vasemmalta puolelta / alusta.

<?php
$taulu2 = "Sana Poistui täältä!";
echo $taulu2 . "<br>";
echo ltrim($taulu2,"Sana");
?>


Tulos:
Sana Poistui täältä!
Poistui täältä!
md5() Laskee MD5-tarkistussumman anetusta merkkijonosta. Käytetään esim. tiedonsiirron tarkistamisessa. Katso lisää täältä.

<?php
$taulu3 = "Merkkijono";
echo md5($taulu3);
?>


Tulos:
78f2d8cf4931e669c172d83b0e5434c3
md5_file() Kuten edellinenkin, tämä on tiedostoja varten. Katso lisää täältä.

<?php
$tiedostonimi = "tekstit.txt";
$md5tiedosto = md5_file($tiedostonimi);
echo $md5tiedosto;
?>
metaphone() Laskee metaphone-merkit merkkijonosta joita lausuttaessa sana tarvitaan. Toimivimmillaan englannin-kielellä esim puhesyntetisaatio-sovelluksissa.

<?php
$merkit1 = "benefit";
$merkit2 = "benefits";

echo metaphone($merkit1);
echo "<br>";
echo metaphone($merkit2);
echo "<br>";
echo metaphone($merkit2,5);
?>


Tulos:
BNFT
BNFTS
BNFTS
money_format() Palauttaa annetun merkkijonon määritellyssä muodossa, esim valuutan muotoilujen määrittelyyn. Katso maiden koodaus PHP:ssä täältä.

Esimerkiksi Saksa, euroina:
<?php
$hinta1 = 2345.678;
setlocale(LC_MONETARY,"de_DE");
echo money_format("Genelec SA2300 hinta: %.2n e", $hinta1);
?>


Tulos:
Genelec SA2300 hinta: 2345.68

Esimerkiksi USA, dollareina:
<?php
$hinta2 = 1234.56;
setlocale(LC_MONETARY,"en_US");
echo money_format("The price is: %i $", $hinta2);
?>


Tulos olisi:
The price is: USD 1,234.56 $
nl_langinfo() Palauttaa yksilöityä tietoa paikallistamisesta. Katso lisää täältä sekä localeconv() -funktion kohdalta.
nl2br() Lisää HTML-koodauksessa merkkijonoon rivinvaihdon.

<?php
echo nl2br("Tämä olisi ensimäinen lause.\nJa tämä lause on uudella rivillä.");
?>

Tulos:
Tämä olisi ensimäinen lause.
Ja tämä lause on uudella rivillä.
number_format() Tuhansien numero-arvon formaatin asetukset.

<?php
$arvot1=1200300;
$arvot2=1999.9;
echo number_format($arvot1)."<br>";
echo number_format($arvot1,2)."<br>";
echo number_format($arvot1,2,",",".");
echo "<br>";
$arvomuoto = number_format($arvot2)."<br>";
echo $arvomuoto;
$arvomuoto = number_format($arvot2, 2);
echo $arvomuoto;
?>


Tulos:
1,200,300
1,200,300.00
1.200.300,00
2,000
1,999.90
ord() Palauttaa funktioon annetun merkkijonon ensimmäisen kirjaimen ASCII-arvon.

<?php echo ord("A")."<br>";
echo ord("Bertta")."<br>";
echo ord("Carol on Annelin sisko");
?>


Tulos:
65
66
67
parse_str() Jäsentää tietyllä tavalla funktioon annetun merkkijonon muuttujiksi.

<?php
parse_str("etunimi=Sirkka&syntyaika=1926");
echo $etunimi."<br>";
echo $syntyaika;
?>

Tulos:
Sirkka
1926
print() Yhden tai useamman merkkijonon näyttäminen. Esimerkissä useampi tapa.

<?php
$tervehdys = "Huomenta ";
$valtio = "Suomi !";
$ika = array("Suomi"=>"100");
$ilmoitus = "ON";
print $tervehdys;
print ", tässä tekstiä www-sivulle";
print "<br>Voit vaihtaa riviä lauseen alussa sekä lopussa.<br>";
print $tervehdys . $valtio . "<br>";
print "Suomi on " . $ika['Suomi'] . " vuotias valtio.<br>";
print "Tämä teksti
on jaettuna
kolmelle riville koodissa.<br>";
print "Onko heittomerkeillä eroa ? $ilmoitus";
print "<br>";
print 'Hipsuja nuo $ilmoitus';
?>

Tulos:
Huomenta , tässä tekstiä www-sivulle
Voit vaihtaa riviä lauseen alussa sekä lopussa.
Huomenta Suomi !
Suomi on 100 vuotias valtio.
Tämä teksti on jaettuna kolmelle riville koodissa.
Onko heittomerkeillä eroa ? ON
Hipsuja nuo $ilmoitus
printf() Muotoillun merkkijonon näyttäminen. Katso tarkemmin täältä.

<?php
$numero = 100;
$teksti1A = "Suomi";
printf("Eräs valtio täyttää %u vuotta, se on %s.",$numero,$teksti1A);
?>


Tulos:
Eräs valtio täyttää 100 vuotta, se on Suomi.
quoted_printable_decode() Muuttaa sitaattina olevan tulostuskelpoisen merkkijonon 8-bittiseksi ASCII-merkkijonoksi.

<?php
$teksti10 = "Tervehdys=0A-teksti.";
echo quoted_printable_decode($teksti10);
?>


Tulos:
Tervehdys -teksti.
quoted_printable_encode() Muuttaa 8-bittisen ASCII-merkkijonon tulostuskelpoiseksi merkkijonoksi.
quotemeta() Metadatan merkkien lisääminen. Katso esimerkit täältä.
rtrim() Poistaa funktiossa annetun välilyönnin tai muita merkkejä merkkijonon oikealta puolelta.

<?php
$teksti11 = "Huomenta Suomi!";
echo $teksti11 . "<br>";
echo rtrim($teksti11,"Suomi!");
?>


Tulos:
Huomenta Suomi!
Huomenta
setlocale() Asettaa sijaintitiedon. Katso tarkemmin täältä.
sha1() Laskee SHA-1 tarkistussumman merkkijonosta. Katso tarkemmin täältä.
sha1_file() Laskee SHA-1 tarkistussumman tiedostosta. Katso tarkemmin täältä.
similar_text() Laskee kahdesta annetusta merkkijonosta samanlaiset merkit.

<?php
$jono1 = "Onko samanlainen";
$jono2 = "Onko samanl..nen";
echo similar_text($jono1,$jono2);
?>


Tulos:
14
soundex() Laskee äänteiden määrän merkkijonosta ? Calculates the soundex key of a string.

<?php
$sana1 = "Tervehdys";
$sana2 = "Hello";
echo soundex($sana1);
echo "<br>";
echo soundex($sana2);
?>


Tulos:
T613
H400
sprintf() Muotoillun merkkijonon kirjoittaminen muuttujaan. Katso lisää täältä

<?php
$LUKU = 12;
$KUU = "joulu";
$teksti12 = sprintf("Vuodessa on %u kuukautta, viimeinen on %skuu.",$LUKU,$KUU);
echo $teksti12;
?>


Tulos:
Vuodessa on 12 kuukautta, viimeinen on joulukuu.
sscanf() Ohjelmakoodiin sisääntulevan merkkijonon jäsentäminen haluttuun formaattiin* ? Katso tarkemmin täältä. Parses input from a string according to a format.

<?php
$teksti13 = "ika:30 paino:60kg";
sscanf($teksti13,"ika:%d paino:%dkg",$ika,$paino);
// *näyttää tyypin ja arvon
var_dump($ika,$paino);
?>


Tulos:
int(30) int(60)
str_getcsv() Jäsentelee merkkijonon CSV-formaattiin ja sijoittaa tulokset taulukoksi ? Parses a CSV string into an array
str_ireplace() Annetun merkkijonon (sanan tai sanojen) etsiminen merkkijonosta ja sen korvaaminen muulla merkkijonolla.

<?php
echo str_ireplace("kypsä","raaka","Mansikka on kypsä!");
?>


Tulos:
Mansikka on raaka!
str_pad() Lisää merkkijonoon merkkejä siten että, merkkijonossa on funktiossa annettu määrä merkkejä.
Esimerkki, perusmuodossa:
<?php
$teksti14 = "Punainen auto";
echo str_pad($teksti14,16,".");
?>


Tulos:
Punainen auto...

Lisä-asetuksella merkkejä voi lisätä merkkijonon,
-molemmille puolille:
str_pad($teksti14,18,".",STR_PAD_BOTH)
-eteen:
str_pad($teksti14,18,".",STR_PAD_LEFT)
-loppuun:
str_pad($teksti14,18,".",STR_PAD_RIGHT)
str_repeat() Annetun merkin toistaminen.

<?php
echo str_repeat("©",6);
?>


Tulos:
©©©©©©
str_replace() Korvaa merkkejä merkkijonossa. Katso myös taulukko-esimerkki.

<?php
$sana="Kaisa";
echo str_replace("Maija",$sana,"Huomenta Maija !");
?>


Tulos:
Huomenta Kaisa !
str_rot13() Merkkijon ROT13 koodaus.

<?php
echo str_rot13("Iltaa Kaisa.");
echo "<br>";
echo str_rot13("Vygnn Xnvfn.");
?>


Tulos:
Vygnn Xnvfn.
Iltaa Kaisa.
str_shuffle() Merkkijonon sattumanvarainen järjestys. Järjestys muuttuu joka kerta kun www-sivu päivitetään.

<?php
echo str_shuffle("Iltaa Kaisa.");
?>


Tulos:
salaIKai.t a
str_split() Merkkijonon jakaminen osiin taulukkoon.

<?php
print_r(str_split("BMW"));
?>


Tulos:
Array ( [0] => B [1] => M [2] => W )
str_word_count() Sanojen laskeminen merkkijonosta. Katso myös lisä-esimerkit.

<?php
$teksti15="Mini on auto?";
echo str_word_count("Audi on auto?");
echo "<br>";
$lukuX = str_word_count($teksti15);
echo $lukuX;
?>


Tulos:
3
3
strcasecmp() Kahden merkkijonon vertailu. Katso lisäesimerkkejä täältä.

<?php
echo strcasecmp("Jussi","JUSSI");
echo "<br>";
echo strcasecmp("Jussi","jUSSi");
echo "<br>";
echo strcasecmp("Jussi","Jussi");
?>


Tulos:
0
0
0
strchr() Halutun merkkijonon ensimmäisen esiintymiskerran etsiminen merkkijonosta, vertaa strstr()-funktioon.

<?php
echo strchr("Mini on auto!","on");
?>


Tulos:
on auto!
strcmp() Kahden merkkijonon vertaaminen.
Funktio palauttaa:
0 jos merkkijonot ovat yhtäsuuret.
<0 arvon jos 1.jono on pienempi.
>0 arvon jos 1.jono on suurempi.

<?php
echo strcmp("Avo-auto!","Avo-auto!");
echo "<br>";
echo strcmp("Avo-auto!","Avoauto!");
echo "<br>";
echo strcmp("Avoauto!","Avo-auto!");
?>


Tulos:
0
-1
1
strcoll() Kahden merkkijonon vertaaminen. (locale based string comparison ?)

<?php
//setlocale (LC_COLLATE, 'NL');
echo strcoll("Rahtialus!","Rahtialus!");
echo "<br>";

setlocale (LC_COLLATE, 'en_US');
echo strcoll("Rahti alus!","Rahti alus!");
?>


Tulos:
0
0
strcspn() Palauttaa numero-arvona tiedon kirjaimen ensimmäisestä esiintymiskohdasta merkkijonossa.
Merkin etsimiskohdan etsimistä voidaan rajoittaa määrittämällä etsimiselle alku- ja loppukohta.

<?php
echo strcspn("Huomenta Jussi","m");
echo "<br>";
echo strcspn("Huomenta Jussi","a",0,6);
?>


Tulos:
3
6
strip_tags() HTML ja PHP elementtien poistaminen merkkijonosta.
Esim. kursiivin <i> ja lihavoinnin poisto <b>:

<?php
echo "Huomenta <b><i>Kaisa!</i></b><br>";
echo strip_tags("Huomenta <b><i>Kaisa!</i></b>");
?>


Tulos:
Huomenta Kaisa!
Huomenta Kaisa!
stripcslashes() Keno-merkkien poistaminen merkkijonosta, (lisääminen tehdään addslashes()-funktiolla).

<?php
echo "Huomenta \Kaisa\ !<br>";
echo stripcslashes("Huomenta \Kaisa\ !");
?>


Tulos:
Huomenta \Kaisa\ !
Huomenta Kaisa !
stripslashes() Katso edellinen esimerkki.
stripos() Funktiossa annetun merkkijonon etsiminen merkkijonosta, palauttaa ensimmäisen esiintymiskohdan.

<?php
echo stripos("Tämä on php -opas, C-kieli on lähes php-kieltä.","PHP");
?>


Tulos:
10
stristr() Funktio etsii annetun merkkijonon ja näyttää merkkijonon ko kohdasta eteenpäin.

<?php
echo stristr("Etsi sana lauseesta.","SANA");
?>


Tulos:
sana lauseesta.
strlen() Merkkijonon pituuden selvittäminen, funktio palauttaa merkkijonon pituuden. Huomaa esimerkistä selviävä ominaisuus.

<?php
echo strlen("Lauseessa on 24 merkkiä.");
echo "<br>";
echo strlen("3456");
?>


Tulos:
25
4
strnatcasecmp() Kahden merkkijonon vertaaminen ns "natural order" algoritmilla, vertaa merkkien lukumääriä.

<?php echo strnatcasecmp("1Testi sana!","1Testi SANA!"); echo "<br>"; echo strnatcasecmp("1Testi sana!","12Testi SANA!"); echo "<br>"; echo strnatcasecmp("12Testi sana!","1Testi SANA!"); ?>

Tulos:
0
-1
1
strnatcmp() Kahden merkkijonon vertaaminen.Katso edellinen esimerkki sekä tämän lopusta.
strncasecmp() Vertailee kahden merkkijonon ensimmäistä kirjainta. Katso täältä tarkemmin.
strncmp() Vertailee kahden merkkijonon ensimmäistä kirjainta. Katso täältä tarkemmin.
strpbrk() Etsiminen merkkijonosta annettujen kirjainten tai kirjaimen perusteella.

<?php
echo strpbrk("Tästä lauseesta etsitään","Ä");
echo "<br>";
echo strpbrk("Tästä lauseesta etsitään","ue");
?>


Tulos:
ästä lauseesta etsitään
useesta etsitään
strpos() Annetun merkkijonon etsiminen merkkijonosta. Näyttää ensimmäisen sijainnin numeroarvona, etsitty merkkijono alkaa ko numeron jälkeen.

<?php
echo strpos("Etsi sana php, tästä php koodista.","php");
?>


Tulos:
10
strrchr() Annetun merkkijonon etsiminen merkkijonosta. Näyttää viimeisen sijainnin mukaan merkkijonoa ko kohdasta eteenpäin

<?php
echo strrchr("Etsi sana php, tästä php koodista.","php");
?>


Tulos:
p koodista.
strrev() Merkkijonon kääntämien, esim. KAISA -> ASAIK.

<?php
echo strrev("Teksti takaperin.");
?>


Tulos:
.nirepakat itskeT
strripos() Viimeisen korvattavan merkkijonon etsiminen ja sijainti merkkijonosta. Huomaa, funktio palauttama numero kertoo missä kohtaa etsitty merkkijono päättyy.

<?php
echo strripos("Tämä ovi ja tuo ovi!","OVI");
?>


Tulos:
18
strrpos() Viimeisen korvattavan merkkijonon etsiminen ja sijainti merkkijonosta. Katso edellinen.

strspn() Palauttaa merkkilistalla lueteltujen merkkien lukumäärän tutkittavassa merkkijonossa. (toimii omituisesti!)

<?php
echo strspn("Päivänkakkara kukka.","Pku");
?>


Tulos:
1
strstr() Etsii ensimmäisen korvattavan merkkijonon annetusta merkkijonosta, esimerkissä näyttää löydetyn merkkijonon.

<?php
echo strstr("Tutki tämä.","tutki");
echo "<br>";
echo strstr("Tutki tämä.","tämä");
?>


Tulos:

tämä.
strtok() Merkkijonon jakaminen osiin, esimerkissä lisäämällä rivinvaihto löydettyjen välilyöntien tilalle.

<?php
$tutkittava = "Huomenta koodari. Tässä mallikoodi.";
$toisto = strtok($tutkittava, " ");
while ($toisto !== false
{
echo "$toisto<br>";
$toisto = strtok(" ");
}
?>


Tulos:
Huomenta
koodari.
Tässä
mallikoodi.
strtolower() Muuttaa merkkijonon kirjaimet pieniksi kirjaimiksi.

<?php
echo strtolower("ISOT KiRjaimet PIEniksi.");
?>


Tulos:
isot kirjaimet pieniksi.
strtoupper() Muuttaa merkkijonon kirjaimet suuriksi kirjaimiksi.

<?php
echo strtoupper("Pienet suuriksi !");
?>


Tulos:
PIENET SUURIKSI !
strtr() Kirjaimien korvaaminen toisilla kirjaimilla ("Etsi/Korvaa").

<?php
echo strtr("Hilla Warld","ia","eo");
?>


Tulos:
Hello World
substr() Merkkijonon osan palauttaminen, (numerona annetusta kohdasta loppu merkkijono).

<?php
echo substr("Seitsemän veljestä.",10);
?>


Tulos:
veljestä.
substr_compare() Kahden merkkijonon vertaaminen keskenään:

* substr_compare("jono1","jono 2",aloituskohta numerona) * jos yhtäsuuret palauttaa numeron 0
* jos jono 1 suurempi kuin jono 2, palauttaa 0:aa suuremman arvon
* jos jono 1 pienempi kuin jono 2, palauttaa 0:aa pienemmän arvon

<?php
echo substr_compare("Hello world","Hello world",0);
echo "<br>";
echo substr_compare("Hillo world","Hello world",0);
echo "<br>";
echo substr_compare("Hello world","Hillo world",0);
?>


Tulos:
0
1
-1
substr_count() Laskee annetun merkkijonon 2 (sana) esiintymiskertojen määrän merkkijonossa 1.

<?php
$Jono1 = "This is nice";
$Jono2 = "is";

// merkkijonon pituus
echo strlen($Jono1)."<br>";
// is-merkkien määrä merkkijonossa
echo substr_count($Jono1,$Jono2)."<br>";
// sama ilman muuttujaa
echo substr_count($Jono1,"is")."<br>";
// lasketaan kohdasta "is is nice"
echo substr_count($Jono1,$Jono2,2<br>";
// lasketaan kohdasta "s is nice"
echo substr_count($Jono1,$Jono2,3)."<br>";
// lasketaan kohdasta to "s i"
echo substr_count($Jono1,$Jono2,3,3)."<br>";
?>


Tulos:
12
2
2
2
1
0
substr_replace() Korvaa annatulla merkkijonolla osan merkkijonosta. Voidaan ilmoittaa kohta mistä alkaen korvaus suoritetaan, kohta voi olla alusta tai lopusta laskien.

<?php
// korvataan jonon alusta
echo substr_replace("Teksti","korvattu",0)."<br>";
// alusta laskien
echo substr_replace("Teksti vaihdetaan","korvattu",7)."<br>";
// lopusta laskien
echo substr_replace("Teksti vaihdetaan","korvattu",-10)."<br>";
// lisätään eteen
echo substr_replace("eteen","Lisätään ",0,0)."<br>";

// korvataan taulukon sisältöä
$merkkitaulu = array("1: aaa","2: aaa","3: bbb");
// Vaihtaa merkit CCC-merkeiksi
echo implode("<br>",substr_replace($merkkitaulu,'CCC',3,3));
?>


Tulos:
korvattu
Teksti korvattu
Teksti korvattu
Lisätään eteen
1: CCC
2: CCC
3: CCC
trim() Poistaa merkkijonon alusta ja lopusta halutut merkit.

Lisäksi käytettävissä:
ltrim() -muokkaus vasemmalta
rtrim() -muokkaus vasemmalta

<?php
$muokattava = "Merivalo on kaupunki !";
echo $muokattava . "<br>";
echo trim($muokattava,"Mer");
?>


Tulos:
Merivalo on kaupunki !
ivalo on kaupunki !
ucfirst() Muuttaa merkkijonon ensimmäisen kirjaimen suureksi kirjaimeksi.

Samaan liittyviä funktioita:
lcfirst() -ensimmäinen kirjain pienellä
strtoupper() -kirjaimet suuriksi
strtolower() -kirjaimet pieniksi

<?php
echo ucfirst("muokkaa tekstiä.");
?>


Tulos:
Muokkaa tekstiä.
ucwords() Muuttaa merkkijonon kaikkien sanojen ensimmäisen kirjaimen suureksi kirjaimeksi.

<?php
echo ucwords("cascade style sheet");
?>


Tulos:
Cascade Style Sheet
vfprintf() Tiedostoon kirjoittaminen. Muista ! Pitää olla olemassa tiedosto !! Katso lisää täältä.

<?php
$numA = 987;
$numB = 123;
$tiedosto = fopen("test.txt","w");
vfprintf($tiedosto,"%f%f",array($numA,$numB));
?>


Tulos:
987.000000123.000000
vprintf() Näytettävän tekstin muokkaaminen muuttujien sisällöllä. Lisää täällä.

<?php
$numero = 8;
$tekstiX = "euroa !";
vprintf("Pääpotti %u miljoonaa %s",array($numero,$tekstiX));
?>


Tulos tiedostossa:
Pääpotti 8 miljoonaa euroa !
vsprintf() Kuten edellinen, muokkaus muuttujaan talletettaessa.

<?php
$numero = 8;
$tekstiX = "euroa!";
$mainos = vsprintf("Pääpotti %u miljoonaa %s",array($numero,$tekstiX));
echo $mainos;
?>

wordwrap() Merkkijonon tulostaminen määrätyn merkkimäärän levyisenä.

<?php
$tekstiY = "Tämä teksti on tietysti tahallaan pitkä ja sisältää hölynpölypuppua!";
echo wordwrap($tekstiY,15,"<br>\n"); ?>


Tulos:
Tämä teksti
on tietysti
tahallaan
pitkä ja
sisältää
hölynpölypuppua!