לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 23-11-2011, 20:24
  משתמש זכר tsachibenezra tsachibenezra אינו מחובר  
 
חבר מתאריך: 06.06.07
הודעות: 749
הקפצת ספירת תווים

מה המצב לפני מה זמן בקשתי לקבל תגובה על הפונקתיה שבניתי
לספירת תווים..

אשמח לקבל תגובות האם יש בעיות שאתם צופים עם קוד כזה

לפני שאני מכניס אותו למערכת

זה הבסיס לפונקציה

היא גם צריכה לתמוך בטקסט עם תגיות שרק הטקסט שמוצג נספר ללא התגיות

אם צריך להיוסיף להוריד אני אשמח לתגובות

תודה

קוד PHP:
 function test() 
    { 
        
header('Content-Type: text/html; charset=utf-8'); 
        
$str "     נחל שניר <strong class='bla'>הוא הארוך בין שלושת יובלי נהר הירדן. חלקו של הנחל הזורם<img /> בסמוך לקיבוץ מעיין 
                 ברוך, נמצא<br/> בתחומי שמורת</strong> טבע נחל שניר, ומציע למטי - ילים בגליל העליון מסלול מהנה במיוחד"

        
//$str = "Lorem Ipsum is <strong class='bla'>simply dummy<img /> text of <b>the           printing</b> and typesetting  
                //industry. <br /> Lorem Ipsum has been</strong> the industry"; 
        
$str trim($str); 
        
$n 101
        
$end_char '…'
         
        
$search = array("/\r/""/\n/""/\t/"); 
        
$replace = array(" "" "" "); 
        
$str preg_replace($search$replace$str); 
         
        
$search = array(" "); 
        
$replace = array("***"); 
        
$str str_replace($search$replace$str); 
     
        
$search = array("#[***]{1,}#"); 
        
$replace = array(" "); 
        
$str preg_replace($search$replace$str); 
         
        
$i 0
        
$out ""
         
        
$htmlOn false
        
$html = array(); 
        
$var ''
         
        
$strA =  preg_split('/(?<!^)(?!$)/u'$str ); 
         
        foreach (
$strA as $key => $value
        { 
            if(
$value === '<' && isset($strA[$key+1]) && $strA[$key+1] === '/'
            { 
                if(!empty(
$html))array_pop($html); 
                
$out .= $value
                continue; 
            } 
            elseif(
$value === '<'
            { 
                
$htmlOn true
                
$out .= $value
                continue; 
            } 
            if(
$htmlOn
            { 
                
$out .= $value
                if(
$value === '>'
                { 
                    if (isset(
$strA[$key-1]) && $strA[$key-1] !== '/')  
                    {                                     
                        
array_push($htmltrim($var)); 
                    } 
                    
$htmlOn false
                    
$var ''
                } 
                else 
                { 
                    
$var .= $value
                } 
            } 
            else  
            { 
                
$out .= $value;                 
                if(
$i == $n
                { 
                    foreach (
array_reverse($html) as $v
                    { 
                        
$tag explode(' '$v); 
                        
$out .= '</'.$tag[0].'>'
                    } 
                    break; 
                } 
                else  
                { 
                    
$i++;         
                } 
            } 
        } 

        
var_dump(trim($out)); 
    } 
_____________________________________

תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #2  
ישן 23-11-2011, 22:53
צלמית המשתמש של Eran
  משתמש זכר Eran Eran אינו מחובר  
 
חבר מתאריך: 27.02.02
הודעות: 4,536
שלח הודעה דרך ICQ אל Eran
בתגובה להודעה מספר 1 שנכתבה על ידי tsachibenezra שמתחילה ב "הקפצת ספירת תווים"

איך קוד לספירת תווים נהיה כל כך ארוך

אני חשבתי על משהו כזה
קוד PHP:
 $str '... long text ..';
$len str.length;
$tags 0;

for (
i=0i<str.lengthi++)
{
  if (
str[i] == '<')
    
$tags++;
  else if (
str[i] == '>')
    
$tags--;
  else if (
$tags 1)
    
$len--;


הקוד הזה רץ פעם אחת ודי...



אני ינחש שזה טקסט שהמשתמש מכניס ולכן עליך להיות חשדן בכל דבר.
בשני המקרים בעיות אפשריות הן HTML לא חוקי שזה ימחק לך את כל הטקסט כנראה
וגם אם כן, לא ברור לי איך אתה מבדיל בין תג לסתם סימן ה <>. בשביל זה המציאו את ה BBCODE...
_____________________________________

[התמונה הבאה מגיעה מקישור שלא מתחיל ב https ולכן לא הוטמעה בדף כדי לשמור על https תקין: http://fresh.clanteam.com/list.png]

[התמונה הבאה מגיעה מקישור שלא מתחיל ב https ולכן לא הוטמעה בדף כדי לשמור על https תקין: http://fresh.clanteam.com/?https://2010-uploaded.fresh.co.il/2010/09/21/52868411.gif,http://www.boredpanda.com/blog/wp-content/themes/mimbo2.2/images/subscribe-panda-605px.png]

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 08:05

הדף נוצר ב 0.11 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר