Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Długość stringa bez znaczników
owned
post
Post #1





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 27.12.2007

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


Witam! Jak policzyć długość stringa pomijając znaczniki html ?
echo strip_tags($tekst);
Nie pomaga

Np
$tekst="<div>tekst stringa</div>";
wyświetla że jest ich 24, a jak pominąć te 11, które tworzą tagi html ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 14)
kipero
post
Post #2





Grupa: Zarejestrowani
Postów: 233
Pomógł: 50
Dołączył: 28.10.2006
Skąd: Radom

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



(IMG:style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
owned
post
Post #3





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 27.12.2007

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


działa !
Ja robiłem:
echo strip_tags($tekst);
echo strlen($tekst);
I dlatego sie kaszaniło, dzięki!

Jeszcze jedno małe pytanko (IMG:style_emoticons/default/smile.gif)

Jeżeli include'uje plik.php do main.php i chce policzyć jego cały string plik.php bez znaczników. Da się go w jakiś sposób zaimportować do zmiennej ? Jest jakieś inne wyjście oprócz wsadzenia wszystkiego co jest w plik.php do $zmienna="..." ?
Go to the top of the page
+Quote Post
Fifi209
post
Post #4





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Nie wiem czy dobrze zrozumiałem...
  1.  
  2.  
  3. // tutaj include
  4.  
  5.  
  6.  

Taki trick.
Go to the top of the page
+Quote Post
owned
post
Post #5





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 27.12.2007

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


mam plik tresc.php:

<div id="cont">
<strong>blablabla</strong>
</div>

i również main.php

<?php
//$zmienna=include('tresc.php');
//strlen(strip_tags($zmienna));
?>

Chcę osiągnąć coś w tym stylu, myślę że teraz jest zrozumiałe


// korzystaj z BBcode!
// ayeo
Go to the top of the page
+Quote Post
ayeo
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 1 202
Pomógł: 117
Dołączył: 13.04.2007
Skąd: 127.0.0.1

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


  1.  
  2. $zmienna = file_get_contents( "treść.php" );
  3.  


Go to the top of the page
+Quote Post
Fifi209
post
Post #7





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


ayeo wiesz czemu Twoje rozwiązanie nie zadziała? Bo plik nie zostanie przepuszczony przez parser... A skoro coś jest w .php to zapewne musi przelecieć przez parser.

A autor dlaczego nie spróbował mojego rozwiązania ?
Go to the top of the page
+Quote Post
owned
post
Post #8





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 27.12.2007

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


Sposób ayeo działa problem pajawia się z innej strony.

Gdy zliczam
strlen(strip_tags($zmienna));

to wychodzi o jeden za dużo! Wynik to 6, a

tresc.php :
<strong>12345</strong>


W oba sposoby działają prawidłowo jednak w obu zwracana jest wartość o 1 za dużo.
Go to the top of the page
+Quote Post
dadexix
post
Post #9





Grupa: Zarejestrowani
Postów: 439
Pomógł: 21
Dołączył: 28.06.2007
Skąd: Bielsko-Biała

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


moze jakas spacja tam gdzies jest, na koncu etc?
@fifi, a nie lepsze by bylo ob_get_contents;D?
Go to the top of the page
+Quote Post
owned
post
Post #10





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 27.12.2007

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


Nie ma żadnych spacji. Nawet jak wyczyszczę cały plik tresc.php to pokazuje '1'
Go to the top of the page
+Quote Post
Fifi209
post
Post #11





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Cytat(owned @ 14.08.2009, 18:48:42 ) *
Sposób ayeo działa problem pajawia się z innej strony.

Gdy zliczam
strlen(strip_tags($zmienna));

to wychodzi o jeden za dużo! Wynik to 6, a

tresc.php :
<strong>12345</strong>


W oba sposoby działają prawidłowo jednak w obu zwracana jest wartość o 1 za dużo.

a zrób var_dump dla wyniku zamiast zliczać.
Nie jestem pewien ale może zaczynać się od zera w systemie binarnym dlatego pokazuje o jeden więcej.

Cytat(dadexix @ 14.08.2009, 18:55:21 ) *
moze jakas spacja tam gdzies jest, na koncu etc?
@fifi, a nie lepsze by bylo ob_get_contents;D?


Przyjrzyj się.
Jest tam. (IMG:style_emoticons/default/winksmiley.jpg)

Ten post edytował fifi209 14.08.2009, 19:01:31
Go to the top of the page
+Quote Post
dadexix
post
Post #12





Grupa: Zarejestrowani
Postów: 439
Pomógł: 21
Dołączył: 28.06.2007
Skąd: Bielsko-Biała

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


no to wniosek jest prosty - zawsze daje liczbe o jeden wyzsza, wiec po prostu daj -1;)

@fifi, oj ja slepy;) kawalek pozniej w poscie bylo file_get_contetns, i mi sie skojazylo ze to tam;) sory;)

Go to the top of the page
+Quote Post
owned
post
Post #13





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 27.12.2007

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


No tak
var_dump($dlugosc);
zwraca wynik 1, wszystko jasne

Teraz tylko pytanie
Który sposób lepszy?
Go to the top of the page
+Quote Post
Fifi209
post
Post #14





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

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


Cytat(owned @ 14.08.2009, 19:05:25 ) *
No tak
var_dump($dlugosc);
zwraca wynik 1, wszystko jasne

Teraz tylko pytanie
Który sposób lepszy?


Jeżeli treść jest statyczna to ayeo, jeżeli dynamiczna to mój.
Go to the top of the page
+Quote Post
owned
post
Post #15





Grupa: Zarejestrowani
Postów: 88
Pomógł: 1
Dołączył: 27.12.2007

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


ok, dzięki wielkie za pomoc

Kurde no jeszcze raz jednak odświeżam (IMG:style_emoticons/default/biggrin.gif)

Nie potrafię tego wszystkiego do kupy zebrać. Chcę żeby tekst skrócił się gdy będzie powyżej 100 znaków jednak po operacji substr i usunięciu znaczników html tekst nie jest stylowany. Czy jest to w ogóle możliwe dla includowanego tresc.php ?
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: 18.09.2025 - 18:46