Miten toimimaan...

Niin miten tämän saa toimimaan?
$teksti = str_replace("\","juu", $teksti);

Näinhän se ei toimi koska tuossa on tuo \"
11533
Äänestä

Muut lukivat myös

Vastaukset 11

Vanhimmat

$teksti = str_replace("\\", "juu", $teksti);

Äänestä
  • koodi olisi näin:
    $teksti = str_replace("\\\","juu", $teksti);

    niin miten sen saa toimimaan

    siis kaksi \\ viivaa on tarkoitus korvata tekstillä

    Äänestä

  • ... kirjoitti:

    koodi olisi näin:
    $teksti = str_replace("\\\","juu", $teksti);

    niin miten sen saa toimimaan

    siis kaksi \\ viivaa on tarkoitus korvata tekstillä

    >>koodi olisi näin:
    $teksti = str_replace("\\\","juu", $teksti);

    niin miten sen saa toimimaan

    Äänestä

  • riemuvuosi kirjoitti:

    >>koodi olisi näin:
    $teksti = str_replace("\\\","juu", $teksti);

    niin miten sen saa toimimaan

    siis miksei tämä sitten toimi:
    $teksti = str_replace("\\\","juu", $teksti);

    Äänestä

  • ... kirjoitti:

    siis miksei tämä sitten toimi:
    $teksti = str_replace("\\\","juu", $teksti);

    Kaksi kenoviivaa merkitään \\\\ eikä \\\, sillä toisen kenoviivan perässä olevaa kenoviivaa ei tulkita erikoismerkiksi. Vastaavasti kolme kenoviivaa kirjoitettaisiin \\\\\\ jne.

    Koodisi olisi siis:
    $teksti = str_replace("\\\\","juu", $teksti);

    Äänestä

  • sturvamies kirjoitti:

    Kaksi kenoviivaa merkitään \\\\ eikä \\\, sillä toisen kenoviivan perässä olevaa kenoviivaa ei tulkita erikoismerkiksi. Vastaavasti kolme kenoviivaa kirjoitettaisiin \\\\\\ jne.

    Koodisi olisi siis:
    $teksti = str_replace("\\\\","juu", $teksti);

    Miks aina käytetään " merkkejä? vaikka ' merkit helpottaisivat huomattavasti ja oikein käytettynä koodi selkiytyisi.

    Siis
    $teksti = str_replace("\\\\","juu", $teksti);

    $teksti = str_replace('\\',"juu", $teksti);

    Noi koodit tekee täsmälleen saman asian, kumpa on selvempä?

    Samoin HTML koodia tulostaessa kannattaa usein käyttää ' merkkejä tai EOF tapaa riippuen kumpa tarkoitukseen sopivampa.

    " merkkejä kannattaa käyttää ainoostaan silloin kun tarvitaan kenoviivan erikoisominaisuutta tai halutaan tulostaa muuttujien sisältöä, tosin muuttujien kanssa usein aikasemmin mainitut tavat paremmat.


    Myös ' merkkien käyttö tekee koodista nopeemman kuin " merkkien käyttö.

    Äänestä

  • ------------------ kirjoitti:

    Miks aina käytetään " merkkejä? vaikka ' merkit helpottaisivat huomattavasti ja oikein käytettynä koodi selkiytyisi.

    Siis
    $teksti = str_replace("\\\\","juu", $teksti);

    $teksti = str_replace('\\',"juu", $teksti);

    Noi koodit tekee täsmälleen saman asian, kumpa on selvempä?

    Samoin HTML koodia tulostaessa kannattaa usein käyttää ' merkkejä tai EOF tapaa riippuen kumpa tarkoitukseen sopivampa.

    " merkkejä kannattaa käyttää ainoostaan silloin kun tarvitaan kenoviivan erikoisominaisuutta tai halutaan tulostaa muuttujien sisältöä, tosin muuttujien kanssa usein aikasemmin mainitut tavat paremmat.


    Myös ' merkkien käyttö tekee koodista nopeemman kuin " merkkien käyttö.

    Voishan vielä selostaa ton EOF tavankin

    echo

    Äänestä

RAAKA STRING -> ""\\\"\"

quotetaan seuraavasti (mukaanluettuna quotet):

$stringini = "\"\"\\\\\\\"\\\"";

Helppoa kuin ABC. \ on escape character eli siis sitä seuraava merkki tulostetaan sellaisenaan jos se on määritelty erikoismerkiksi PHP-syntaksin kannalta; esim n tarkoittaa erikoismerkkinä rivivaihtoa joka saadaan aktivoimalla se escapella -> \n

Äänestä
  • Miks ihmeessä näin?
    $stringini = "\"\"\\\\\\\"\\\"";

    Eikä näin?
    $stringini = '""\\\"\"';


    "\n" tulostaa rivinvaidon
    '\n' tulostaa \n

    Äänestä

  • -----------. kirjoitti:

    Miks ihmeessä näin?
    $stringini = "\"\"\\\\\\\"\\\"";

    Eikä näin?
    $stringini = '""\\\"\"';


    "\n" tulostaa rivinvaidon
    '\n' tulostaa \n

    Varmaan edellinen demosi escapen käyttöä noiden tyylien hyvyys riippuu käyttökohteesta tietenkin, jokaisella tavalla on oma hyvyytensä, singlequotella et voi toimia jos sinulla on string jossa on tarvetta sekä escape-chareille että niiden vastineille mutta singlequotella on helpompi tuottaa luettavaa stringiä.

    'Tämä on lainaus:\n "lainaus"'

    ei toimi halutulla mutta

    "Tämä on lainaus:\n \"lainaus\"" toimii.

    Äänestä

  • Muroz kirjoitti:

    Varmaan edellinen demosi escapen käyttöä noiden tyylien hyvyys riippuu käyttökohteesta tietenkin, jokaisella tavalla on oma hyvyytensä, singlequotella et voi toimia jos sinulla on string jossa on tarvetta sekä escape-chareille että niiden vastineille mutta singlequotella on helpompi tuottaa luettavaa stringiä.

    'Tämä on lainaus:\n "lainaus"'

    ei toimi halutulla mutta

    "Tämä on lainaus:\n \"lainaus\"" toimii.

    Voihan se olla hyvinkin mahollista, et demosi vain niitten käyttöä. Tosin monessa oppaassa neuvoataan juuri tekemään noin, ja minkä kerran oppii niin vaikea sitä on enään myöhemmin muuttaa paremmaksi.

    Oikeessa olet, että hyvyys riippuu käyttötarkoituksesta, lukaseppas vastaukseni sturvamiehelle, siinä pölötin hieman enempi näistä.

    Käyttötarkoituksesta riippuen voi myös olla hyvä kirjoittaa tähän malliin.

    'Tämä on lainaus:' ."\n".
    ' "lainaus"'




    Mutta pitempiä tulosteita tehdessä alla oleva tapa on usein käyttökelpoisin, toimii rivinvaihdot ja tab painalluksetkin, hyvä jos haluaa tehdä tulosteestakin luettavaa koodipuolella, helpompaa kuin \n ja \t käyttäminen.

    Äänestä

Kommentoi aloitusta


... kirjoitti:

Niin miten tämän saa toimimaan?
$teksti = str_replace("\","juu", $teksti);

Näinhän se ei toimi koska tuossa on tuo \"

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu