Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]true jeśli początek zmiennej taki sam, jak 2 zmiennej
.Wojtek
post
Post #1





Grupa: Zarejestrowani
Postów: 43
Pomógł: 0
Dołączył: 22.09.2009

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


Witam

Nie mogę znaleźć odpowiedzi jak zrobić takie coś:

np. mam zmienną
  1. $tekst = "cos tam";

Jak zrobić, aby uzyskać TRUE w porównaniu tej zmiennej ze zmienną
  1. $tekst2 = "cos tam + dodatkowy tekst"

Czyli uzyskuję z funkcji true, jeśli początek zmiennej jest taki sam jak dana zmienna lub FALSE, jeśli tak nie jest.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
qrzysztof
post
Post #2





Grupa: Zarejestrowani
Postów: 220
Pomógł: 19
Dołączył: 25.04.2009

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


A

  1. $tekst1="Cos takiego sobie";
  2. $tekst2="Cos takiego innego";


ma zwracać przy porównaniu TRUE?

Bo jeśli nie - czyli jeśli jedna zmienna musi zawierać się w drugiej - zainteresuj się funkcją strstr() lub pokrewnymi (np. strpos()).

Ten post edytował qrzysztof 5.10.2010, 18:30:36
Go to the top of the page
+Quote Post
kapuch
post
Post #3





Grupa: Zarejestrowani
Postów: 389
Pomógł: 69
Dołączył: 26.04.2010
Skąd: Łódź

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


Chyba prosciej bedzie przy uzyciu preg_match, bo wystarczy:

  1. $szukany_ciag = "/^cos tam/";
  2. $caly_tekst = "cos tam pisze zeby bylo cos napisane";
  3. if(preg_match($szukany_ciag, $caly_tekst)){
  4. echo "Znaleziono";
  5. }else{
  6. echo "Nie znaleziono";
  7. }

Pisane z palca, ale na 99% zadziala (IMG:style_emoticons/default/tongue.gif)
Zwroci TRUE, gdy znajdzie "cos tam", na poczatku tekstu.
Jeszcze mozna dodac modyfikator " i " (zeby ignorowac wielkosc liter) - "/^cos tam/i"

Ten post edytował kapuch 5.10.2010, 18:41:55
Go to the top of the page
+Quote Post
qrzysztof
post
Post #4





Grupa: Zarejestrowani
Postów: 220
Pomógł: 19
Dołączył: 25.04.2009

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


A

  1. return stringpos($tekst1, $tekst2)===0;


nie byłoby prostsze? (IMG:style_emoticons/default/rolleyes.gif) Zwłaszcza, że przy tworzeniu wzorca ze zmiennej może być trochę zamieszania (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
kapuch
post
Post #5





Grupa: Zarejestrowani
Postów: 389
Pomógł: 69
Dołączył: 26.04.2010
Skąd: Łódź

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


No tak, ale dodaj do tego jeszcze funkcje strtolower() bo musisz ja dodac, aby ignorowalo wielkosc liter, no i to twoje rozwiazanie nie jest odporne na zmiany - jak bedzie chcial cos zmienic w sposobie wyszukiwania (np, szukac od konca), to musi od nowa pisac warunek, a w preg_matchu zmieniasz tylko wyrazenie i jest ok.
Nie wiem gdzie ty masz problemy ze zmiennymi przy tworzeniu wzorca? To jest proste jak drut (IMG:style_emoticons/default/tongue.gif)
  1. $ciag = 'cos tam';
  2. $match = "/^$ciag/i";

I to ma byc trudne? (IMG:style_emoticons/default/winksmiley.jpg)

Dla mnie osobiscie do takich "wyszukiwarek" preg_match jest stworzony, ale kazdy ma swoje zdanie (IMG:style_emoticons/default/winksmiley.jpg)

Ten post edytował kapuch 5.10.2010, 19:02:04
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 23:39