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

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

O-B 22-07-06 16:14

[php] איך אני יכול לדעת את סיומת הקובץ?
 
איך אני יכול למצוא את סיומת הקובץ
אם זה gif או jpg?

חשבתי על

PHP קוד:

$text ='http://www.google.co.il/images/logo_sm.gif'
if(preg_match('/[.jpg]/',$text)) { 
    echo 
"הקובץ הוא תמונה מסוג jpg";
}else{
    if(
preg_match('/[.gif]/',$text)) { 
        echo 
"הקובץ הוא תמונה מסוג gif";
    }


אבל כש text מוגדר ככה זה לא טוב..
PHP קוד:

$text ='http://www.jpg.co.il/store/Bugatti.gif' 

כי בעצם התמונה היא תמונת gif והוא יכתוב שהיא jpg

RS324 22-07-06 17:22

בבקשה :

PHP קוד:


$text 
='http://www.google.co.il/images/logo_sm.gif/';

if (
substr($text,strlen($text)-1) == '/')
{
    
$text substr($text,0,(strlen($text)-1));
}

$type substr($text,(strlen($text)-4));
echo 
"type is $type<br>"

אם שמתי לב טיפלתי באפשרות שהתו האחרון הוא / , לפעמים עושים את זה...

HighA 22-07-06 22:31

נחמד RS
אבל יש פונקציה שקוראים לה FileType חחחחח
|ממזר קטן| |קוול! קטן|

Alon.R 23-07-06 00:18

SsH S Scripts

אישית היא לא עבדה לי...

-VladK- 23-07-06 07:44

ציטוט:

נכתב במקור על ידי SsH S Scripts
נחמד RS
אבל יש פונקציה שקוראים לה FileType חחחחח
|ממזר קטן| |קוול! קטן|

FILETYPE זה לא במקרה פונקציה שמשתמשים בא כשעובדים עם קבצים? (העלאה וזה...)

Eli-Hai 23-07-06 22:54

אני מניח שאתה מנסה ליצור מערכת העלאת קבצים, אתה פשוט יכול להשתמש בsubstr(), בשביל לבדוק X תווים מהסוף, לדוגמא 3 תווים מהסוף - gif.
למרות שfiletype() נראה לי יותר יעיל.

HighA 23-07-06 22:59

filetype עובד לי מעולה וכן השתמשתי בזה להעלאת קבצים אבל לא רק

Unknown 23-07-06 23:43

קוד:

$exploded = explode(".", $fileURL);
$extension = stripslashes($exploded[count($exploded)-1]);

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

RS324 25-07-06 00:35

ציטוט:

נכתב במקור על ידי Unknown
קוד:

$exploded = explode(".", $fileURL);
$extension = stripslashes($exploded[count($exploded)-1]);

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


הקוד שהבאתי לו הרבה יותר פשוט... אם הוא כבר לא בוחר להשתמש ב FILETYPE

Unknown 25-07-06 04:30

ציטוט:

נכתב במקור על ידי RS324
הקוד שהבאתי לו הרבה יותר פשוט... אם הוא כבר לא בוחר להשתמש ב FILETYPE

אבל אתה מודע לעובדה שלא תמיד הסיומות הן של 3 תווים...
והוא גם יכול לא לעבוד בעקבות תווים אחרים שיופיעו בסוף כגון ? ואחריו משתנה כלשהו (לפעמים זה קורה)
בגלל זה מומלץ יותר מה שהבאתי לו כי זה תמיד יקח את הסוף
ואז אפשר לעשות מקסימום ביטוי REGEX ולפרק את זה


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

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