Terve taas,
Tää on taas näitä, jota en ymmärrä, joten josko joku viisaampi voisi neuvoa...
Tämä php-koodin pätkä ei tulosta tuota sprintf:ssä merkkijonossa annettua \n kuten pitäisi vaan näyttää sen tekstinä.
<?php $virhe['virhe']='Virhe 1 /\nxxxxx'; $message ="Line 1\nLine 2\nLine 3\n"; $message = sprintf("Line 1\nLine 2\n%sLine 3\n",$virhe['virhe']).$message; ?>
Tulostuu:
Line 1
Line 2
Virhe 1 /\nxxxxxLine 3
Line 1
Line 2
Line 3
Varmaankin muotoiluni on sprintf:lle väärä, mutta en tiedä miten sen pitäisi toimia?
Etukäteen kiittäen.
"Virhe 1 /\nxxxxx"
voi toimia paremmin. Hipsujen sisältöä ei käsitellä yhtä paljon kuin lainausmerkkien sisältöä. Noin teoriassa hipsut rasittavat prosessoria siis vähemmän, mutta käytännössä ero on useimmiten olematon.
Kiitti!
Olet oikeassa.
Line 1
Line 2
Virhe 1 /
xxxxxLine 3
Line 1
Line 2
Line 3
Tätä en tiennytkään, joten lienee syytä käyttää lainausmerkkiä hipsun sijaan. Onko tähän jotakin suositusta/selvitystä luettavissa jostakin?
https://www.php.net/language.types.string
Oma konventio on käyttää lainausmerkkejä aina/vain kun tarvitsen noita muunnosominaisuuksia (esim. rivinvaihdot ja muuttujien tulostelu tekstin seassa [aaltosulkunotaation kanssa]). Heittomerkkien kanssa tarvitsee arpoa vähemmän, mitä tulkilta on odotettavissa.
Aihe on jo aika vanha, joten et voi enää vastata siihen.