我使用mkdir()
foreach循環中創建我的文件夾:()無法訪問
if (!file_exists($id))
{
mkdir($id);
}
$id
可能是529e1f4070b0c
文件夾中創建,但訪問它們的時候通過FTP或直接從直接管理文件管理器,我遇到沒有這樣的文件或目錄,也404通過瀏覽器訪問時未找到頁面。
怎麼了?
#UPDATE 1
我刪除foreach
循環和分配$id
手動行之有效,文件夾中創建和可訪問,但是當它裏面foreach
,創建文件夾,但不能訪問!
#UPDATE 2
我改變了代碼,使用全路徑作爲推薦意見:
if (!file_exists(dirname(__FILE__)."/".$id))
{
mkdir(dirname(__FILE__)."/".$id, 0777);
}
這也導致先前的結果!
#UPDATE 3
塊的完整代碼:
$file = file("codes.txt");
foreach ($file as $id)
{
$html = content_of_url($id);
if (!file_exists(dirname(__FILE__)."/".$id))
{
mkdir(dirname(__FILE__)."/".$id, 0777);
}
$dom = new domDocument;
$dom->loadHTML($html);
$dom->preserveWhiteSpace = false;
$images = $dom->getElementsByTagName('img');
foreach ($images as $i => $img)
{
$url = str_replace("../..", "http://domain.com", $img->getAttribute('src'));
file_put_contents(dirname(__FILE__)."/".$id."/".$i.".jpg", file_get_contents($url));
}
}
嘗試給完整路徑 –
@VaheShadunts讓我試試。 – revo
有什麼消息嗎? –