2012-10-20 27 views
0

基本上,我正在開發一個腳本的問題。問題是它想要在它的「九十九夜Ⅱ」中創建一個8位文本文件夾,最後是2。PHP錯誤function.imagejpeg

imagejpeg() [<a href='function.imagepng'>function.imagejpeg</a>]: 
Unable to open 'cache/album/ninety-ninenightsⅡ/na.jpeg' for writing: 
No such file or directory in /home/****/public_html/card.php on line 113 

<!-- language: lang-php --> 
+0

imagepng的調用在哪裏? – Fraxtil

+0

增加更多信息//感謝 – user1761886

回答

1

您對使用UTF-8的角色有麻煩。 str_* php函數族都是latin1,所以你的角色正在被轉換爲垃圾。

通過替換代碼:

$file = 'cache/album/' . mb_strtolower(preg_replace('|\s|u', '', $asdfgh['Title']), 'UTF-8') . '.jpg'; 
if (!file_exists($file)) 
{        
    $gasd = imagecreatefromjpeg($asdfgh['Pictures']['Tile32px']); 

小心你的imagepng使用$文件了。

你真的應該使用邏輯變量名,當你在幾個月/幾年內回到代碼中時,你會遇到麻煩。

+0

其基本上通過json抓取信息,然後用這些信息創建圖像,這就是它要求我通過erros創建的圖像。 – user1761886

+0

您可以做的最簡單和安全的事情是從文件名中刪除非字母數字/下劃線字符。不是嗎? –

+0

也許但試圖甚至使用str_replace替換,似乎並沒有工作。只是很難創建這個1文件夾大聲笑 – user1761886