آژانس هواپیماییexchanging

باز کردن محتوای فایل زیپ

شروع موضوع توسط MortezaJS ‏5 جولای 2007 در انجمن Script آماده

  1. MortezaJS

    MortezaJS کاربر تازه وارد

    تاریخ عضویت:
    ‏19 می 2006
    نوشته ها:
    35
    تشکر شده:
    0
    یک تابع خوب و راحت می خوام برای Extract کردن فایل های زیپ. البته راهنمای zLib رو تو سایت پی اچ پی خوندم اما چیزی که می خواستم رو توش پیدا نکردم. ببینید، من می خوام نسخه ی جدید وردپرس رو بصورت زیپ (یا gzip؟) روی هاستم آپلود کنم بعدش با یه اسکریپت محتویاتش رو توی root DIR بریزم. (لازم به توضیح نیست که شاخه هانام فایل ها باید حفظ بشن)
    ضمنا اگه زحمت آپلود رو هم خود هاست بکشه خیلی خوب میشه :rolleyes: . یعنی وردپرس رو از سایتش بگیره.
    ببخشید دیگه، من تو Php تازه کارم و وبلاگم رو تازگی با WP راه انداختم. اینه که به کمکتون احتیاج دارم. ممنونم
     
    Last edited: ‏6 فوریه 2014
  2. alik

    alik کاربر قدیمی پرشین تولز

    تاریخ عضویت:
    ‏23 سپتامبر 2005
    نوشته ها:
    2,148
    تشکر شده:
    1,226
    دو تا راه به نظرم میرسه اگر میتوانید دستورات لینوکس را اجرا کنید که دستور دانلود کردن و باز کردن فایل gz توی اینترنت ریخته کافیه که با php فقط اجراشون کنید

    این کد را قبلا برای یکی از کارهای خودم مشابه شما استفاده کردم دانلودش با php هستش و باز کردن فایل با دستور لینوکس هست که اگر بخوای میتونی جفتش را با لینوکس انجام بدی ...


    PHP:
    <?
        
    error_reporting(E_ALL);
        
    $file fopen("http://www.site.com/download/file.gz""r") or $file=FALSE;
        
    $handle fopen("./filename.gz""w");
        if(
    $file){
             while (!
    feof($file)) {  
                
    fwrite($handle,fgets($file1024));
        }
        
    fclose($file);
        
    fclose($handle);
        echo 
    'File downloaded , try to unzip...';
        
    exec('gunzip filename.gz',$ret);
        echo 
    '<pre>';
            echo 
    print_r($ret);
        echo 
    '</pre>';
    }else{echo 
    'file not accessable';}
    ?>


    اگر دسترسی اجرا کردن دستورات لینوکس را ندارید دانلودش را مثل کد بالا انجام بدید و از یک کلاس php برای باز کردنش استفاده کنید ...
     
  3. MortezaJS

    MortezaJS کاربر تازه وارد

    تاریخ عضویت:
    ‏19 می 2006
    نوشته ها:
    35
    تشکر شده:
    0
    سلام. معذرت می خوام که دیر جواب می دم، به اینترنت دسترسی نداشتم.
    اونطور که من فهمیدم، به خاطر یک سری دلایل امنیتی، بهتره وقتی کاری رو میشه با دستورات خود PHP انجام داد، تا حد امکان بهتره از معادل لینوکسی اون کد استفاده نشه. هر من اگه بخوام هم نمی تونم! چون هاست من رایگانه (ParsehGig) و حق دسترسی به دستورات لینوکس رو نمیده. من چند روز پیش اینو تو یه ای-بوک خوندم، البته بازم شما وارد تری.
    حالا لطفا یکی از همین کلاس ها که فرمودین رو به من معرفی کنین(همونطور که گفتم هاستم zLib داره). بلد نیستم سرچ کنم! نمی دونی چه قدر گشتم: extract+zLib+"tar.gz"+php+class اما اون چیزی که می خواستم رو پیدا نکردم.
    راستی، برای دریافت فایل توسط هاست، از کد زیر استفاده کردم. اجرا می شه، خطا هم نمی ده. اما کار نمی کنه! چرا؟
    کد:
     copy("http://wordpress.org/latest.tar.gz","latest.tar.gz") 
    باز هم ممنون. از مدیر محترم هم متشکرم ;-)
     
  4. MortezaJS

    MortezaJS کاربر تازه وارد

    تاریخ عضویت:
    ‏19 می 2006
    نوشته ها:
    35
    تشکر شده:
    0
    اگه کسی می دونه، لطفا کمک کنه! دوباره میگم: یه کلاس می خوام که باهاش محتوای فایل های tar.gz. رو توی هاستم Extract کنم (از حالت فشرده خارج کنم). مرسی
     
  5. MortezaJS

    MortezaJS کاربر تازه وارد

    تاریخ عضویت:
    ‏19 می 2006
    نوشته ها:
    35
    تشکر شده:
    0
    یا یکی دو تا سایت معرفی کنین که همچین کلاسی توش پیدا کنم.