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

הוסטס - פורום אחסון האתרים הגדול בישראל (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=49257)

-roee- 08-07-07 11:58

[PHP] סיומת נטו של קובץ
 
שלום

ניסיתי להוציא סיומת נטו של קובץ ככה:
PHP קוד:

            $efilename explode('.'$_FILES['file_uploaded']['type']);
            
$ext $efilename[count($efilename) - 1]; 

אך משום מה זה לא עובד..

אני צריך רק את המילה wav ולא את audio/x-wav... כנל לגבי כל הסיומות

מה במה שעשיתי לא היה טוב?

meshuga 08-07-07 12:18

ציטוט:

נכתב במקור על ידי bigsmoke (פרסם 516720)
שלום

ניסיתי להוציא סיומת נטו של קובץ ככה:
PHP קוד:

            $efilename explode('.'$_FILES['file_uploaded']['type']);
            
$ext $efilename[count($efilename) - 1]; 

אך משום מה זה לא עובד..

אני צריך רק את המילה wav ולא את audio/x-wav... כנל לגבי כל הסיומות

מה במה שעשיתי לא היה טוב?

בדקת על סוג הקובץ ולא השם שלו...
שנה את type לname...זה יעבוד כמו שצריך..


אגב, אדון tzvika אם יוצא לך לראות את האשכול הזה....
ככה בודקים סיומת...ולא כמו שאתה עשית (3 תוים אחרונים) במערכת ההיא שאתה קורא לה העלאת קבצים...

עריכה:
אם כי, שימוש בarray-pop במקום $ext = $efilename[count($efilename) - 1]; נמצא כיותר יעיל ב99% מהפעמים (הרצתי הרבה פעמים ורק פעם אחת הזמן הרצה של הדרך שלך יצא פחות זמן מהדרך שרותם הציג פעם)...(בדקתי עכשיו)..

חיים 08-07-07 13:26

הנה השיטה הכי טובה:
PHP קוד:

$file explode(".",basename($FILES['file_uploaded']['name'])); 


Tomer 08-07-07 13:31

ציטוט:

נכתב במקור על ידי masterpl (פרסם 516763)
הנה השיטה הכי טובה:
PHP קוד:

$file explode(".",basename($FILES['file_uploaded']['name'])); 


וזה שונה ממה שהוא אמר למעלה, כי?

meshuga 08-07-07 13:33

ציטוט:

נכתב במקור על ידי masterpl (פרסם 516763)
הנה השיטה הכי טובה:
PHP קוד:

$file explode(".",basename($FILES['file_uploaded']['name'])); 


איך זה בדיוק השיטה הכי טובה? זה מחזיר מערך...זה לא מחזיר את הסיומת....הוא ביקש סיומת...
אלא אם כן אתה מתכוון שככה הכי טוב להכניס לexplode

אבל, אין טעם להשתמש בbasename על $FILES['file_uploaded']['name'] כי זה מחזיר לך את שם הקובץ נטו...זה לא לינק או משהו...

Eran-s 08-07-07 14:12

וזו דוגמא לשיטה שמצ'וגע המליץ עליה:
PHP קוד:

array_pop(explode(".", ($FILES['file_uploaded']['name']))); 


RS324 08-07-07 14:55

ציטוט:

נכתב במקור על ידי Eran-s (פרסם 516803)
וזו דוגמא לשיטה שמצ'וגע המליץ עליה:
PHP קוד:

array_pop(explode(".", ($FILES['file_uploaded']['name']))); 


אחם אחם שי ?

meshuga 08-07-07 14:59

ציטוט:

נכתב במקור על ידי RS324 (פרסם 516829)
אחם אחם שי ?

הוא כתב המליץ, ואני כתבתי בתגובה שלי שאתה הבאת...אז ...שששש :-] |קורץ|

Eran-s 08-07-07 15:32

ציטוט:

נכתב במקור על ידי RS324 (פרסם 516829)
אחם אחם שי ?

אין לי מושג אם נתת את זה בעבר אבל אני משתמש בזה מעל שנה |קורץ|

חיים 08-07-07 15:58

חחח טוב בסדר אני רק אמרתי שזאת גם שיטה לזה התכוונתי אבל לא משנה פשוט לא כל כת הבנתי את השיטה שלך :)


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

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