הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   explode כל 2 תווים (https://hosts.co.il/forums/showthread.php?t=33060)

-roee- 16-10-06 18:17

explode כל 2 תווים
 
שלום



איך ניתן להפריד מספר כזה(ראה דוגמא) לפי כל 2 תווים:

דוגמא של המספר:

161006



אם אני יעשה explode כל 2 תווים זה אמור לצאת:

16

10

06



(התאריך של היום)



תודה

Unknown 16-10-06 18:33

בשביל להשתמש בEXPLODE אתה צריך הפרדה כלשהי בין התווים, אם זה -, / או כל תו אחר
אחרת, תשתמש בלולאה שרצה על הSTRING ולוקחת כל 2 תווים

WebProject 16-10-06 18:38

תנסה לפרק את זה למערך של 6 תווים, ותדפיס בלולאה שתיים בכל פעם.

RS324 16-10-06 18:54

למה לפרק למערך ? כל סטרינג הוא כבר מערך ותעשה לולאת FOR ואז תרוץ איתה על המערך לאורך של STRLEN
מאד פשוט.

-roee- 16-10-06 18:57

חיפשתי בכל מיני מקומות וגיליתי שיש לזה פונקציה, אך היא קיימת רק מ PHP 5
לפונקציה קוראים: str_split

אז הלכתי לתגובות של php.net ותנחשו מה מצאתי?
מישהו שכתב את הפונקציה לגרסאות פחות מ php5

PHP קוד:

<?php
if(!function_exists('str_split')){ 
   function 
str_split($string,$split_length=1){ 
       
$count strlen($string);  
       if(
$split_length 1){ 
           return 
false;  
       } elseif(
$split_length $count){ 
           return array(
$string); 
       } else { 
           
$num = (int)ceil($count/$split_length);  
           
$ret = array();  
           for(
$i=0;$i<$num;$i++){  
               
$ret[] = substr($string,$i*$split_length,$split_length);  
           }  
           return 
$ret
       }      
   }  
}
?>


RS324 16-10-06 19:10

כן הוא הוסיף כל מיני בדיקות, לא משהו קריטי....
וזה בערך כמו שאני אמרתי לך לעשות...עם לולאת FOR


כל הזמנים הם GMT +2. הזמן כעת הוא 18:46.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ