הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות > תכנות - מדריכים, code snippets

   
|!|

 
 
כלים לאשכול תצורת הצגה
Prev הודעה קודמת   הודעה הבאה Next
ישן 02-12-05, 21:07   # 1
WebProject
מ.תיכנות
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: אשדוד
הודעות: 3,070
Send a message via Skype™ to WebProject

WebProject לא מחובר  

[מדריך] PHP - הפונקציה basename

רז, החלטתי לתת לך את מבוקשך, בקצת יותר משפטים

אז הנה המדריך:


basename();

מה הפונקצייה? למה היא משמשת? מה ניתן לעשות בעזרתה?
  1. הפונקצייה תחזיר את השם הבסיסי, מה הכוונה? אם שם הקובץ נגמר בתוו "\" הפונקצייה תחזיר את הצירוף תווים הראשון שאחריו [הסבר לקוח מphp.net]
מה ניתן לעשות בעזרתה?

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

פונקצייה זאת [rand] בעצם מבטיחה במערכות העלאות קבצים אי התנגשות בין שמות קבצים, כלומר תופעה כזאת:

filename: file.gif * 2
לא תחזור מפני ששם הקובץ הינו מספר רנדומאלי.

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

אז מה בעצם עוזרת הפונקצייה basename?

לאחר שהופכים את שם הקובץ למספר רנדומאלי, ללא טיפול בסיומת הקובץ, הסיומת פשוט "תבלע" במספר הרנדומאלי.

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

אז כאן בעצם אני אתן מדריך ללקיחת סיומת הקובץ ע"י הפונקצייה.

--

הגדרת הפונקצייה ושימושה:

PHP קוד:
<?Php
basename
string path , [string suffix,tag]);
?>
דוגמא:

PHP קוד:
<?Php
$path 
"tal/gleichger"
basename($path); // will return "gleichger"
?>
מה שעשית כאן זה אחסון שמי ושם משפחתי על משתנה, והפרדתו ע"י סימן ה"סלאש".

מה שהפונקצייה תעשה היא תחזיר את צירוף התווים האחרון לאחר ה"סלאש".

אבל לאחר כל זה, בשביל מה זה בכל זאת עוזר?

ברגע שיש לנו שם קובץ כמו לדוגמא file.php ואנו רוצים להפריד את הסיומת מן שם הקובץ, הדבר הראשון שעולה לי בראש הוא החלפת הנקודה בסימן הסלאש, ע"י הפונקצייה str_replace.

דוגמא:

PHP קוד:
<?Php
$file 
"pic.gif";
  
$str str_replace(".","/",$file);

    
$x =  basename($str); // will return "gif"  
?>
מה שעשיתי פה זה בעצם החלפת תו הנקודה בתו ה"סלאש" וע"י שימוש בפונקצייה basename החזרתי את סיומת הקובץ.

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

דוגמא:

PHP קוד:
<?Php
$file 
"mypic.jpg";
  
$replace str_replace(".","/",$file);

    
$basename basename($replace);

   
$rand rand(1,999);

 print 
"Uploade-".$rand.".".$basename;
?>
השקעתי במדריך הזה, מקווה שיעזור.


יום טוב


__________________
כושר קרבי \ טיפים לגיבושים



פורטל רעל - צבא וכושר קרבי
  Reply With Quote
 

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 

Tags
מדריך למתקדמים, מדריך php, פונקציות


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


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

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