Limitar la condición de comprobación al cargar archivos SWF

Estoy creando una aplicación para cargar archivos swf en una carpeta usando PHP. Mi script está funcionando, excepto por la primera condición si estoy verificando si la extensión es swf o no, pero parece que tengo algún error.

No estoy seguro sivideo/swf es un parámetro de comprobación válido para archivos SWF o no. Mi guión completo está abajo. Estoy comprobando el tamaño del archivo SWF utilizando getimagesize (). Algunas personas pueden preguntarse si getimagesize funciona para la imagen, pero he visto algunos ejemplos en los que se ha usado getimagesize () para obtener el tamaño de los archivos SWF.

Me está dando el mensaje "archivo swf no válido", lo que significa que no cumple la primera condición de verificación.

<code><?php
        foreach($_FILES['item_swf']['tmp_name'] as $key=>$val)
        {

        list($width, $height) = getimagesize($_FILES['item_swf']['tmp_name'][$key]);

        if (( ($_FILES["item_swf"]["type"][$key] == "video/swf") || ($_FILES["item_swf"]["type"][$key] == "video/SWF") )
        && ($_FILES["item_swf"]["size"][$key] < 800000))
           {
                if ($_FILES["item_swf"]["error"][$key] > 0)
                  {
                     echo "Error: " . $_FILES["item_swf"]["error"][$key] . "<br />";
                  }
                else if($width==1000 && $height==328)
                  {
                   if (file_exists('../../swf_folder/header_swf/' . $_FILES["item_swf"]["name"]))
                            {
                               echo $_FILES["item_swf"]["name"][$key] . " already exists. ";
                             }
                   else
                            { 

                               move_uploaded_file($val, '../../swf_folder/header_swf/'.$_FILES['item_swf']['name'][$key]);
                               echo "done";
                        }
                  }
             else 
                 {
                    echo "size doest permit";
                 }  
            }
        else
            {
               echo "Not a valid swf file::";
            }                       

        }
        ?>
</code>

La línea que se da a continuación.

<code>move_uploaded_file($val, '../../swf_folder/header_swf/'.$_FILES['item_swf']['name'][$key]);
</code>

está funcionando perfectamente ya que está cargando archivos a la carpeta dedicada, de alguna manera parece que los parámetros de verificación para archivos SWF solo no están configurados correctamente.

Editar

Tengo mi respuesta. En lugar de usarvideo/swf Necesito usarapplication/x-shockwave-flash.

Así que el código final será:

<code><?php
        foreach($_FILES['item_swf']['tmp_name'] as $key=>$val)
        {

        list($width, $height) = getimagesize($_FILES['item_swf']['tmp_name'][$key]);

        if (($_FILES["item_swf"]["type"][$key] == "application/x-shockwave-flash") 
        && ($_FILES["item_swf"]["size"][$key] < 800000))
           {
                if ($_FILES["item_swf"]["error"][$key] > 0)
                  {
                     echo "Error: " . $_FILES["item_swf"]["error"][$key] . "<br />";
                  }
                else if($width==1000 && $height==328)
                  {
                   if (file_exists('../../swf_folder/header_swf/' . $_FILES["item_swf"]["name"]))
                            {
                               echo $_FILES["item_swf"]["name"][$key] . " already exists. ";
                             }
                   else
                            { 

                               move_uploaded_file($val, '../../swf_folder/header_swf/'.$_FILES['item_swf']['name'][$key]);
                               echo "done";
                        }
                  }
             else 
                 {
                    echo "size doest permit";
                 }  
            }
        else
            {
               echo "Not a valid swf file::";
            }                       

        }
        ?>
</code>

Respuestas a la pregunta(2)

Su respuesta a la pregunta