2012-11-06 36 views
5

Tôi sử dụng các mã bên dưới để trích xuất đường dẫn hình ảnh src. Nhưng đây là vấn đề khi tên tệp hình ảnh có ký tự đặc biệt (ví dụ: ~ DQBTZ_UC ([email protected]_1R2U_Q4.gif), lần xuất kết quả là như thế này:?.. ~ 6Z6W4% 255BO29FQ% 255BA4YN_% 255BFR9% 2529M.gifphp dom lấy mã hóa đường dẫn hình ảnh src

Làm thế nào để khắc phục vấn đề này xin lỗi vì tiếng Anh kém tôi

function _get_imagepath($content){ 

    $doc = new DOMDocument(); 
    $doc->loadHTML($content); 
    $imagepaths=array(); 
    $imageTags = $doc->getElementsByTagName('img'); 
    $folder=file_directory_path(); 
    foreach($imageTags as $tag) { 

     $imagepaths[]=$tag->getAttribute('src'); 
    } 

    if(!empty($imagepaths)){ 

     return $imagepaths; 
    }else{ 

     return FALSE; 
    } 

} 
+0

hmm, tôi không thấy một vấn đề ở đây, bạn tìm thấy src của bạn, và lưu nó ở đâu đó hoặc sử dụng nó bằng cách nào đó ... pls giải thích những gì bạn mong đợi nó để làm – Serg

Trả lời

0

Bạn nhận được URL mã hóa

Bạn muốn để sử dụng urldecode:

Giải mã bất kỳ mã hóa% ## nào trong chuỗi đã cho. Dấu cộng ('+') là được giải mã thành ký tự khoảng trắng.

urldecode() in PHP Manual

0

thay

return $imagepaths; 

với

return urldecode($imagepaths); 

để giải mã url hình ảnh của bạn.

Các vấn đề liên quan