copy() fonksiyonu ile servera dosya çekmek

Piyasadaki “isterseniz video thumbnaillerini serverınıza kaydeder efendim” özellikli botlarda kullanılan copy() fonksiyonunu biliyorsunuzdur. copy(”dosya url”,”dizin/dosyaadi.uzantı”); şeklinde kullanılıyor. Dün gece, bir video botu yazarken, bu fonksiyonu kullanma ihtiyacı duydum. Sitenin birinden video thumblarını servera çekeceğim. Gel görki, bazı thumbnailler çekilmiyor. Daha doğrusu çekiliyor da, 1 kblık bir jpeg oluşturulup içine “Bad Request” yazılıyor. Tırlatma aşamasındayken, birşeyi farkettim. Resim urlsinde “boşluk” var. Yani; www.domain.com/resim adi.jpg şeklinde imiş bazı urller. Böyle bir urlyi herhangi bir browser ile açmaya kalktığınızda  boşluklar otomatik olarak %20 karakteriyle yer değiştirir. copy() fonksiyonumuzun böyle bir özelliği yokmuş. Ha bu sorunu da şöyle çözebilirsiniz; $yeniresimurlsi = str_replace(” “,”%20″,$eskiresimurlsi); şeklinde replace yapıp, copy(”yeniresimurlsi”,”dizin/resimadi.jpg”); şeklinde kullanabilirsiniz.

$yeniresimurlsi = str_replace(” “,”%20″,$eskiresimurlsi); yerine $

yeniresimurlsi = rawurlencode($eskiresimurlsi);

de kullanabiliriz.

Afiyet olsun.

Yorum Yapılmamış »

Henüz yorum yapılmamış.

Bu yazıya yapılan yorumlar için RSS beslemeleri. TrackBack URL

Yorum yapın