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

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 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
ישן 02-12-05, 21:12   # 2
Tomer
Whatever
 
Tomer's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 7,039
שלח הודעה באמצעות MSN אל Tomer Send a message via Skype™ to Tomer

Tomer לא מחובר  

לא יותר קל לעשות
PHP קוד:
$path "tomer.php";
$path explode(".",$path);
echo 
$path// return php 
?

ומדריך יפה... למרות שלא הכי שימושי
__________________
תומר
  Reply With Quote
ישן 02-12-05, 21:14   # 3
WebProject
מ.תיכנות
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: אשדוד
הודעות: 3,070
Send a message via Skype™ to WebProject

WebProject לא מחובר  

צודק ב100%, בסוף המדריך חשבתי על זה [מוזר שדווקא אז זה צץ, למרות שאני לא ממש מתעסק עם מערכות העלאת קבצים] בכל מקרה, חשבתי "למה לא?" ופירסמתי בכל זאת.

בכל מקרה זה יכול לעזור למשתמש
__________________
כושר קרבי \ טיפים לגיבושים



פורטל רעל - צבא וכושר קרבי
  Reply With Quote
ישן 02-12-05, 21:37   # 4
satan
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 33
הודעות: 1,582

satan לא מחובר  

יפה מאוד טל D:

עכשיו הבנתי לאן הלכת לעשר דקות (שנמשכות חצי שעה חחחח ). ^^
__________________
פנוי לעבודה כמתכנת WEB - למידע נוסף: ליאור אמסלם.
בניית אתרים באינטרנט - בלוג על בניית אתרים באינטרנט עם טיפים, מאמרים, מדריכי תכנות ועוד.
משחקים אתר משחקים
  Reply With Quote
ישן 03-12-05, 09:58   # 5
psycho
הוסטסניון
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
גיל: 34
הודעות: 1,926

psycho לא מחובר  

לא הבנתי למה מיועד המדריך
לקחת סיומת אפשר בעזרת ה MIME TYPE ואלף דברים שונים

ואם לדוגמא הקובץ הוא

path/somedir/somefile

ואם לדוגמא הקובץ הוא
path/hey.you.zip

:\

גיא.
  Reply With Quote
ישן 03-12-05, 10:00   # 6
WebProject
מ.תיכנות
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: אשדוד
הודעות: 3,070
Send a message via Skype™ to WebProject

WebProject לא מחובר  

ציטוט:
נכתב במקור על ידי psycho
לא הבנתי למה מיועד המדריך
לקחת סיומת אפשר בעזרת ה MIME TYPE ואלף דברים שונים

ואם לדוגמא הקובץ הוא

path/somedir/somefile

ואם לדוגמא הקובץ הוא
path/hey.you.zip

:\

גיא.
גיא גיא גיא, תחשוב על זה ככה:

ממתי אפשר להכניס תווים כאלו לשם של קובץ? [/].


ושוב, אני יודע שיש עוד די הרבה דרכים לעשות זאת, אבל בחרתי בדרך הזאת.

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



פורטל רעל - צבא וכושר קרבי
  Reply With Quote
ישן 03-12-05, 10:13   # 7
RazRaz
חבר וותיק
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
הודעות: 1,083

RazRaz לא מחובר  

תודה רבה רבה על ההשקעה.
__________________
העלאת תמונות
  Reply With Quote
ישן 03-12-05, 10:16   # 8
WebProject
מ.תיכנות
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: אשדוד
הודעות: 3,070
Send a message via Skype™ to WebProject

WebProject לא מחובר  

שמחתי לעזור
__________________
כושר קרבי \ טיפים לגיבושים



פורטל רעל - צבא וכושר קרבי
  Reply With Quote
ישן 03-12-05, 11:52   # 9
רומן
חבר מתקדם
 
מיני פרופיל
תאריך הצטרפות: Dec 2005
מיקום: באר שבע
גיל: 36
הודעות: 405
שלח הודעה באמצעות ICO אל רומן

רומן לא מחובר  

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

אבל מדריך נחמד
  Reply With Quote
ישן 03-12-05, 11:54   # 10
WebProject
מ.תיכנות
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: אשדוד
הודעות: 3,070
Send a message via Skype™ to WebProject

WebProject לא מחובר  

ציטוט:
נכתב במקור על ידי רומן
כמה דברים, יש פונקציה בהעלאה שבודקת את סוג הקובץ, לכן זה לא ממש שימושי,
וזה ממש נובי להתשמש ב rand במצב כזה, הכי טוב לשתמש ב time שלא חוזר על עצמו ואולי להוסיף rand, הכי טוב כמו ב imageshack, שם הקובץ והלוסיך ספרות ואותיות ראנדומאלית,

אבל מדריך נחמד
אני מודע לכך, אבל שוב, כתבתי דמריך בהתאם לצרכיו של המשתמש שהיה צריך אותו.

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



פורטל רעל - צבא וכושר קרבי
  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. הזמן כעת הוא 01:36.

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