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

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

Oribest 09-05-08 20:29

[PHP] פירוק מספר והמרה לתמונות.
 
שלום לכולם,
שבת שלום.

אני רוצה לעשות משו כזה,
שאם אני מקבל נגיד את המספר
465
אז הוא יהפוך לי את זה לקוד HTML כזה :
קוד:

<img src="4.jpg"><img src="6.jpg"><img src="5.jpg">
איך אני עושה את הדבר הזה?

תודה רבה לכל העוזרים!

daMn 09-05-08 20:33

PHP קוד:

str_replace(3"<img src=\"3.jpg\">"$Number); 

יש מיליון דרכים לעשות, אפשר לחלק את המספר ב10 בצורה רקורסיבית..ועוד ועוד

Daniel 10-05-08 16:07

str_split, זה אמור להתאים כאן

daMn 10-05-08 16:39

ציטוט:

נכתב במקור על ידי MasterT (פרסם 632372)
str_split, זה אמור להתאים כאן

איך בדיוק ספליט יעזור?

4ior 10-05-08 16:50

ציטוט:

נכתב במקור על ידי daMn (פרסם 632376)
איך בדיוק ספליט יעזור?

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


בעקרון יש הרבה דרכים..

Nils 11-05-08 16:59

למה לא לעשות את זה עם משתנים?

Rom 11-05-08 19:08

במקום להסתבך תעשה את זה ככה:
PHP קוד:

<?php
    $text 
"456";
    for(
$i 0$i<strlen($text); $i++)
        echo 
"<img src='{$text{$i}}.jpg' />";
?>


Daniel 11-05-08 19:25

ציטוט:

נכתב במקור על ידי Rom (פרסם 632679)
במקום להסתבך תעשה את זה ככה:
PHP קוד:

<?php
    $text 
"456";
    for(
$i 0$i<strlen($text); $i++)
        echo 
"<img src='{$text{$i}}.jpg' />";
?>


זה ממש ממש לא יעיל....

מהבחינה הראשונה - הלולאה כל פעם, מחדש, תחשב את strlen($text);. משאבים.

+ strlen אתה צריך כדי לגלות את מספר התווים, אפשר להשתמש במקום $i<strlen($text), ב-
PHP קוד:

isset($text{$i}) 

וככה חסכת פעמיים על יעילות..

Rom 11-05-08 21:28

ציטוט:

נכתב במקור על ידי MasterT (פרסם 632681)
זה ממש ממש לא יעיל....

מהבחינה הראשונה - הלולאה כל פעם, מחדש, תחשב את strlen($text);. משאבים.

+ strlen אתה צריך כדי לגלות את מספר התווים, אפשר להשתמש במקום $i<strlen($text), ב-
PHP קוד:

isset($text{$i}) 

וככה חסכת פעמיים על יעילות..

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

Daniel 12-05-08 14:51

ציטוט:

נכתב במקור על ידי Rom (פרסם 632722)
גם השיטה שלך לא ממש יעילה, אתה כל פעם בודק אם התו קיים.
אם אתה רוצה לחשב רק פעם אחת את מספר התווים אז תעשה עוד משתנה שיכלול את גודל הטקסט.

בדקתי, והשיטה שהצגתי הכי יעילה...

isset זאת פונקציה מובנית, אני לא יודע בדיוק איך להסביר את זה - אבל היא פונקציה מאוד מהירה.

הרצתי סקריפט זהה ב- 3 השיטות.. זמן הביצוע.
עם strlen - כמו הראשונה שהצגת.
1.8258221149445
strlen שמור במשתנה
1.6486470890045
בלי strlen - כמו שאמרתי.
1.5933120250702

זה עוד הבדלים שצריך לשים לב אליהם.


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

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