nemec Posted September 13, 2005 Report Share Posted September 13, 2005 man ir uztaisiita funkcija, kura kjeburus pārveido par normāliem burtiem... nu piemēram: $kjeburs =" Latvijya dzyivo tryis sestdaylas latvieysu, divas sestdaylas krievu un viena sestdayla latgalieysu - kruto protams...." tad funkcija attyeloyasana($kjeburs,"lv",$razmers); vērtība ir "Latvijā dzīvo trīs sestdaļas latviešu, divas sestdaļas krievu un viena sestdaļa latgaliešu - kruto protams.... ja funkcijā ir norādīts razmers, tad if ($razmers==0) { return $galva; } else { if ($razmers>=strlen($galva)) { return $galva; } else { $galva=substr($galva,0,$razmers); return "".$galva."...";} } } ši funkcija man saglabāta atseviškā failā, UTF-8, savus kodus es rakstu ANSI un taisu include šai funkcijai. problēma tāda, ja $razmers ir nulle (vispār nav), tad strādā viss perfekti. bet kad norādu $razmeru, tad funkcija dažreiz strādā, dažreiz nē: karoče Browserī pirms pievienotā daudzpunktā izdrukā UTF-8 jautājuma zīmi, cipa neatpazīst pēdējo simbolu. Jautājums, kā to labot????? tikai nesakiet, ka man šī funkcija nav vajadzīga, tā tulko visus ķeburus man vajadzīgajā valodā, ļoti ērta īstenībā, ja lapā vairākas valodas..... Link to comment Share on other sites More sharing options...
Delfins Posted September 14, 2005 Report Share Posted September 14, 2005 1.) Ja tev vajag UTF-ā, un kādā brīdī ne-UTF failā ir kādas string konstante, tad iepējams būs kjeburi tai... jo UTF nav tikai viens baits... tie ir veseli 2 un pat 4... 2.) Raksti mainīgo nosaukumus ANGLISKI! ... no tava koda nevar saprast kas ir kas. 3.) raksti skaidrāk jautājumus (šim ir veltīts pat FAQ, kā rakstīt pareizi) 4.) .. tāpēc neatbildēšu, jo nevaru iebraukt, ko tu jautā un par ko... Link to comment Share on other sites More sharing options...
Analgiins Posted September 14, 2005 Report Share Posted September 14, 2005 (edited) to delfins: nu vareeju jau arii pateikt, kur to FAK lai meklee, mosh jams pat to nezin Speciaali rakstiit posti, lai beigaas pateiktu, ka Nē, es tev neatbilsdeeshu... to nemec: ko tas tavs $razmers dara, kaadiem noluukiem vinjsh domaats? Un kas ir $galva - strings ar/bez kjeburiem, kaadiem..? Edited September 14, 2005 by Analgiins Link to comment Share on other sites More sharing options...
Kaitnieks Posted September 15, 2005 Report Share Posted September 15, 2005 UTF-8, kā zini, viens latviešu simbols var izstiepties pa diviem baitiem (ja lieto simbolus, kas izstiepjas pa vairāk baitiem, metode kļūst nedaudz sarežģītāka, bet to neapskatīsim). Tātad, substr lietot fiksētā izmērā nedrīkstēs - tev ir jāpārbauda, vai netiek cirsts UTF burts uz pusēm. Ir jāapskata pēdējais simbols un jāpārbauda, vai tā ASCII kods mazāks/vienāds par 0x7F. Ja tā, tad sadalīts pareizi, pretējā gadījumā jācērt vai nu vienu simbolu uz priekšu, vai atpakaļ. http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 Link to comment Share on other sites More sharing options...
Recommended Posts