फ़ाइल का नाम

cars-lights-neon-1920x1080.jpg
cars-lights-neon-3840x2160.jpg
cars-lights-neon-800x600.jpg

मुझे क्या चाहिए

cars-lights-neon.jpg

मैंने क्या कोशिश की

$name="cars-lights-neon-1920x1080.jpg";
$newname =   substr($name, 0, -4); //removing.jpg
// Real name
$rev= strrev("$newname"); // outputs "0801x0291-noen-sthgil-srac"
$revok= strstr($rev, '-'); //outputs "-noen-sthgil-srac"
$neutral = strrev("$revok"); //outputs "cars-lights-neon-"
$neutral = substr($neutral, 0, -1); //outputs "cars-lights-neon"

$filename = $neutral.".jpg"; //outputs "cars-lights-neon.jpg";

यह कोड भी ठीक काम करता है .. लेकिन यह सरल चरणों में किया जा सकता है। क्या मैं पूछ रहा हूँ बेहतर कोड के लिए है ..

// फ़ाइल का नाम और रिज़ॉल्यूशन डेटाबेस से आ रहा है इसलिए यह हर बार एक जैसा नहीं होता है .. Thnx

1
Gorki 18 नवम्बर 2015, 12:15

2 जवाब

सबसे बढ़िया उत्तर

बस PHP की तरह preg_replace फ़ंक्शन का उपयोग करें

$name = "cars-lights-neon-1920x1080.jpg";
echo preg_replace('/(-\d+x\d+)/','',$name);//cars-lights-neon.jpg

डेमो

2
Narendrasingh Sisodia 18 नवम्बर 2015, 09:19

आप preg_replace का उपयोग कर सकते हैं:

$string = 'cars-lights-neon-1920x1080.jpg';
$filename = preg_replace('/-[0-9]{3,4}x[0-9]{3,4}/', '', $string);
1
Mihai Matei 18 नवम्बर 2015, 09:19