Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> prosba o pomoc, zmiana znaków na inne
SonGoace
post
Post #1





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 13.05.2002
Skąd: Sanok

Ostrzeżenie: (0%)
-----


Mam taki problem, nie znam sie na programowniu a potrzebny jest mi skrypt zamieniający polskie znaki na zwykłe literki ó=o ż=z itd. Chodzi o to ze mam napisy do filmów ale moje DVD nie obsługuje polskich znaków wiec chce wyeliminować polskie znaki z plików txt. Bardzo prosze o pomoc - bede wdzieczny


--------------------
co chciałes tu znalezc ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 13)
kszychu
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


Masz tu funkcję zamieniającą literki w iso na polskawe.

  1. <?php
  2. function iso2pl($tekst) {
  3. $iso88592=array (161,198,202,163,209,211,166,172,175,177,230,234,179,241,243,182,188,191);
  4. $pl =array (65, 67, 69, 76, 78, 79, 83, 90, 90, 97, 99, 101,108,110,111,115,122,122);
  5.  
  6. for($i = 0; $i < 18; $i++) {
  7. $tekst=str_replace(Chr($iso88592[$i]),Chr($pl[$i]),$tekst);
  8. }
  9.  
  10. return $tekst;
  11. } //iso2pl
  12. ?>


I jeszcze tablice dla win 1250
  1. <?php
  2. $pl =array (65, 67, 69, 76, 78, 79, 83, 90, 90, 97, 99, 101,108,110,111,115,122,122);
  3. $cp1250=array (165,198,202,163,209,211,140,143,175,185,230,234,179,241,243,156,159,191);
  4. ?>


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
SonGoace
post
Post #3





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 13.05.2002
Skąd: Sanok

Ostrzeżenie: (0%)
-----


niestety nie działa. mi chodzi zeby własnie usunącpolskie znaki, zeby np. ze słowa który zrobiło słowo ktory, czyli zeby skrypt wykrywał literke "ó" i zmieniał ją w "o"


--------------------
co chciałes tu znalezc ?
Go to the top of the page
+Quote Post
kszychu
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


A co konkretnie nie działa? Bo ta funkcja na bank działa i robi właśnie to, co opisałeś.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
SonGoace
post
Post #5





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 13.05.2002
Skąd: Sanok

Ostrzeżenie: (0%)
-----


wstawiłem do pliku a.php takie cos:
  1. <?php
  2.  
  3. $tekst=óżźćłń;
  4.  
  5. function iso2pl($tekst) {
  6. $iso88592=array (161,198,202,163,209,211,166,172,175,177,230,234,179,241,243,182,188,191);
  7. $pl =array (65, 67, 69, 76, 78, 79, 83, 90, 90, 97, 99, 101,108,110,111,115,122,122);
  8.  
  9. for($i = 0; $i < 18; $i++) {
  10. $tekst=str_replace(Chr($iso88592[$i]),Chr($pl[$i]),$tekst);
  11. }
  12.  
  13. return $tekst;
  14. } //iso2pl
  15.  
  16. ?>


po włączeniu na stronie nie pojawia sie nic. dopisałem na dole strony echo("$tekst"); ale pojawił sie niezmieniony tekst ?!?!?


--------------------
co chciałes tu znalezc ?
Go to the top of the page
+Quote Post
kszychu
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


1. Pokaz jak wywołujesz tę funkcję.
2. MOże masz znaki w win 1250 i wtedy musisz użyć tych drugich tablic.


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
SonGoace
post
Post #7





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 13.05.2002
Skąd: Sanok

Ostrzeżenie: (0%)
-----


jak juz mówiłem jestem ciemny z php.
jak wywołuje funkcje ? właczam przeglądarke i wpisuje adres pliku php w który wkleiłem ten tój skrypik.

Powiem jak bym chciał to zrobić.

mam plik napisy.txt, wrzucam go na serwer. mam tez plik zmiana.php a w nim cos w stylu:

<?

$filesize=filesize("napisy.txt");
$file=fopen("napisy.txt","r");
flock($filez, 1);
$text=fread($file,$filesize);
flock($file, 3);
fclose($file);

tutaj jakis skrypt który zmienia literki w zmiennej $text

$file = fopen("napisy.txt","w");
fputs($file,"$text");
fclose($file);

?>

Ten post edytował SonGoace 24.05.2005, 10:42:24


--------------------
co chciałes tu znalezc ?
Go to the top of the page
+Quote Post
kszychu
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 2 712
Pomógł: 23
Dołączył: 27.10.2003
Skąd: z kontowni

Ostrzeżenie: (0%)
-----


To nie skrypcik, tylko funkcja, którą należy użyć we własnym skrypcie.
Przykład użycia:
  1. <?php
  2.  
  3. function iso2pl($tekst) {
  4. $iso88592=array (161,198,202,163,209,211,166,172,175,177,230,234,179,241,243,182,188,191);
  5. $pl =array (65, 67, 69, 76, 78, 79, 83, 90, 90, 97, 99, 101,108,110,111,115,122,122);
  6.  
  7. for($i = 0; $i < 18; $i++) {
  8. $tekst=str_replace(Chr($iso88592[$i]),Chr($pl[$i]),$tekst);
  9. }
  10.  
  11. return $tekst;
  12. }
  13.  
  14. function win2pl($tekst) {
  15. $pl =array (65, 67, 69, 76, 78, 79, 83, 90, 90, 97, 99, 101,108,110,111,115,122,122);
  16. $cp1250=array (165,198,202,163,209,211,140,143,175,185,230,234,179,241,243,156,159,191);
  17.  
  18. for($i = 0; $i < 18; $i++) {
  19. $tekst=str_replace(Chr($iso88592[$i]),Chr($pl[$i]),$tekst);
  20. }
  21.  
  22. return $tekst;
  23. }
  24.  
  25. $tekst = 'zażółć gęśłą jaźń';
  26. $tekst2 = iso2pl($tekst);
  27. $tekst3 = win2pl($tekst);
  28.  
  29. echo $tekst.'<br>'.$tekst2.'<br>'.$tekst3;
  30. ?>


--------------------
"Coś się kończy, coś się zaczyna." Andrzej Sapkowski
Go to the top of the page
+Quote Post
militis
post
Post #9





Grupa: Zarejestrowani
Postów: 57
Pomógł: 0
Dołączył: 17.08.2004
Skąd: Olsztyn

Ostrzeżenie: (0%)
-----


  1. <?
  2.  
  3. function remove_plchars($text)
  4. {
  5.  
  6. $array=array(
  7. 'ą'  => 'a',
  8. 'ć'  => 'c',
  9. 'ę'  => 'e',
  10. 'ł'  => 'l',
  11. 'ó'  => 'o',
  12. 'ś'  => 's',
  13. 'ż'  => 'z',
  14. 'ź'  => 'z');
  15.  
  16. return strtr($text, $array);
  17.  
  18. }//endfunction remove_plchars();
  19.  
  20. $text='ąćęłóśżź';
  21.  
  22. echo remove_plchars($text); //aceloszz
  23.  
  24. ?>


--------------------
Artur Wasilewski
Go to the top of the page
+Quote Post
SonGoace
post
Post #10





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 13.05.2002
Skąd: Sanok

Ostrzeżenie: (0%)
-----


"militis" dzieki dokładnie o to mi chodziło - Krzychu, tobie tez dzieki za to ze sie starałes - ale czasami nie trzeba bardzo kombinować, najprostrze rozwiązania są najbardziej skuteczne smile.gif


--------------------
co chciałes tu znalezc ?
Go to the top of the page
+Quote Post
Morek
post
Post #11





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 28.05.2005

Ostrzeżenie: (0%)
-----


Mam takie pytanie czy taki sam skrypt mógłby zamieniać całe wyrazy?! Bo chciałbym zrobić jakiś prosty cenzor do mojej Księgi Gości a nie bardzo wiem jak (dopiero zaczynam się uczyć php smile.gif),

będw wdzięczny za pomoc!
Go to the top of the page
+Quote Post
militis
post
Post #12





Grupa: Zarejestrowani
Postów: 57
Pomógł: 0
Dołączył: 17.08.2004
Skąd: Olsztyn

Ostrzeżenie: (0%)
-----


Do cenzora juz lepiej imo uzyc preg_replace().


--------------------
Artur Wasilewski
Go to the top of the page
+Quote Post
Morek
post
Post #13





Grupa: Zarejestrowani
Postów: 25
Pomógł: 0
Dołączył: 28.05.2005

Ostrzeżenie: (0%)
-----


Dzięki wielkie, troche cieżko się w tym połapać ale myśle, że dam sobie radę dry.gif a przynajmniej tak mi się wydaje rolleyes.gif
Go to the top of the page
+Quote Post
miedzna
post
Post #14





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat(SonGoace @ 2005-05-23 16:17:17)
Mam taki problem, nie znam sie na programowniu a potrzebny jest mi skrypt zamieniający polskie znaki na zwykłe literki ó=o ż=z itd. Chodzi o to ze mam napisy do filmów ale moje DVD nie obsługuje polskich znaków wiec chce wyeliminować polskie znaki z plików txt. Bardzo prosze o pomoc - bede wdzieczny

  1. <?php
  2.  
  3. $polskie  = array ('ą', 'Ą', 'ę', '', 'ć', 'Ć', 'ż', 'Ż', 'ź', 'Ź', 'ó', 'Ó', 'ł', 'Ł', 'ń', 'Ń', 'ś', 'Ś'); 
  4. $nie_polskie = array ('a', 'A', 'e', 'E', 'c', 'C', 'z', 'Z', 'z', 'Z', 'o', 'O', 'l', 'L', 'n', 'N', 's', 'S');
  5. $text = str_replace($polskie, $nie_polskie, $text);
  6. echo $text;
  7.  
  8. ?>


Ten post edytował miedzna 21.06.2005, 10:34:27
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 08:56