Php 无法使用$\u文件访问上载到服务器的zip文件中包含的文件

Php 无法使用$\u文件访问上载到服务器的zip文件中包含的文件,php,xml,zip,Php,Xml,Zip,我目前正在使用以下代码将zip文件上载到服务器: <div id = 'imfContainer'> <?php include('../menu.php'); ?> <div id='imfContentWrapper'> <div id='imfContent'> <div id='stylized' class='myform'> <fo

我目前正在使用以下代码将zip文件上载到服务器:

<div id = 'imfContainer'>
    <?php include('../menu.php'); ?>
    <div id='imfContentWrapper'>
        <div id='imfContent'>
            <div id='stylized' class='myform'>
                <form action='multibackwardCompatible2.php' method='post' onSubmit='return validateForm()' enctype='multipart/form-data'>
                    <h1>Validate Backward Compatibility for Multiple Models</h1>
                    <p>
                        Select a zip file containing the models you wish to test for backward compatibility. These will be tested against the latest model with the same name in the repository. 
                    </p>
                    <table id='project_register_form'>
                        <tr>
                            <th>Models Zip File <span style='color:red;'>*</span></th>
                            <td>
                                <input type='file' name ='modelZip[]' id='modelZip'><BR CLEAR=LEFT>
                                <span id='up_error' class='error_message'></span>
                            </td>
                            <td class='comment'>    
                                <span id='spanButtonPlaceHolder'></span>
                                <div id='divStatus'></div>
                            </td>
                        </tr>   
                    </table>
                    <input type='hidden' name='backward_compatible2' id='backward_compatible2' value='true' />                  
                    <button type='submit'>Validate BC</button>
                </form>
                <p></p>
                <div id='status' style="display:none; position:relative;"><img src="../images/eindicator.gif" alt="Smiley face" /></div>
                <div id='report'>
                <?php
                if(isset($_POST['backward_compatible2'])){
                    ini_set('max_execution_time', 3000); //300 seconds = 5 minutes
                    $message = compatibilityResult();

                }
                ?>
                </div>
            </div>
        </div>
    </div>
    <?php include('../footer.php'); ?>
</div>

我曾尝试在php中使用代码,例如,但没有成功。有没有办法使用$\u文件将已上载的xml文件从zip文件中取出?

您应该能够使用
ZipArchive
类来解压缩:Hi试图使用ZipArchive进行解压缩,但不认为在这种情况下会有帮助,当用户将zip文件上传到服务器时,我不想将其解压缩到本地计算机以访问xml文件,我只想访问服务器上zip文件夹中的xml文件,而不在任何地方解压缩它们。您知道这是否可行吗?zip文件当前以.tmp文件的形式存储在$\u FILES变量中,zip存档将提取到您想要的任何位置。如果要提取到服务器,它可以提取到服务器。如果要移动或操作文件,请尝试
$zip=file\u get\u contents($\u FILES[“modelZip”][“tmp\u name”])
现在该文件应该存储在
$zip
变量中,您可以使用ziparchive或任何您想做的事情将其保存或解压缩到服务器。您应该能够使用
ziparchive
类来解压缩:Hi试图使用ziparchive进行解压缩,但不认为在这种情况下会有所帮助,当用户将zip文件上传到服务器时,我不想将其解压缩到本地计算机以访问xml文件,我只想访问服务器上zip文件夹中的xml文件,而不在任何地方解压缩它们。您知道这是否可行吗?zip文件当前以.tmp文件的形式存储在$\u FILES变量中,zip存档将提取到您想要的任何位置。如果要提取到服务器,它可以提取到服务器。如果要移动或操作文件,请尝试
$zip=file\u get\u contents($\u FILES[“modelZip”][“tmp\u name”])
现在该文件应该存储在
$zip
变量中,您可以使用ziparchive或任何您想做的操作将其保存或解压缩到服务器。
function compatibilityResult(){

    include('../logAction.php');
    include('reportFilter.php');

    if ($_FILES['modelZip']['type'][0]=="application/x-zip-compressed") {
        $filename = $_FILES["modelZip"]["name"];
        $source = $_FILES["modelZip"]["tmp_name"];
        $type = $_FILES["modelZip"]["type"];
        //print_r($filename);
        //print_r($source);
        //print_r($type);
        //print $_FILES['model']['tmp_name'][0];

    }
}