elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  url en funcion php
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: url en funcion php  (Leído 4,537 veces)
Orni1

Desconectado Desconectado

Mensajes: 30


Ver Perfil
url en funcion php
« en: 7 Abril 2021, 14:02 pm »

Quiero obtener el tamaño de un archivo remoto y he encpntrado esta función php que funciona...

Código
  1. <?php
  2. function retrieve_remote_file_size($url){
  3.     $ch = curl_init($url);
  4.  
  5.     curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  6.     curl_setopt($ch, CURLOPT_HEADER, TRUE);
  7.     curl_setopt($ch, CURLOPT_NOBODY, TRUE);
  8.  
  9.     $data = curl_exec($ch);
  10.     $size = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
  11.  
  12.     curl_close($ch);
  13.     return $size;
  14. }
  15. echo retrieve_remote_file_size("https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png");
  16. ?>
... me devuelve el tamaño del logo en bites 5969.
Si a la url que quiero llegar le quiero poner los comodines /../ tengo que indicar a curl "--path-as-is" para que no anule los comodines.

El problema es que no se donde colocar "--path-as-is" en la función php.









En línea

EdePC
Moderador Global
***
Desconectado Desconectado

Mensajes: 2.042



Ver Perfil
Re: url en funcion php
« Respuesta #1 en: 7 Abril 2021, 16:16 pm »

Se agrega igual como lo andas haciendo:

Código
  1. <?php
  2. function retrieve_remote_file_size($url){
  3.  $ch = curl_init($url);
  4.  
  5.  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  6.  curl_setopt($ch, CURLOPT_HEADER, TRUE);
  7.  curl_setopt($ch, CURLOPT_NOBODY, TRUE);
  8.  curl_setopt($ch, CURLOPT_PATH_AS_IS, TRUE);
  9.  
  10.  $data = curl_exec($ch);
  11.  $size = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
  12.  
  13.  curl_close($ch);
  14.  return $size;
  15. }
  16. echo retrieve_remote_file_size("https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png");
  17. ?>

Referencia: https://www.php.net/manual/es/function.curl-setopt.php

Importante: CURLOPT_PATH_AS_IS true para no manejar secuencias de puntos. Añadida en cURL 7.42.0. Disponible desde PHP 7.0.7.


« Última modificación: 7 Abril 2021, 16:18 pm por EdePC » En línea

Orni1

Desconectado Desconectado

Mensajes: 30


Ver Perfil
Re: url en funcion php
« Respuesta #2 en: 7 Abril 2021, 18:13 pm »

Gracias, funciona perfecto.
En línea

WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.589


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: url en funcion php
« Respuesta #3 en: 6 Mayo 2021, 19:06 pm »

Hola, talves te salga mas facil usar file_get_contents() en ves de curl, recuerda que no todos los hosting tienen instalado el complemento de curl para php, este no es nativo.

Saludos.
En línea

Orni1

Desconectado Desconectado

Mensajes: 30


Ver Perfil
Re: url en funcion php
« Respuesta #4 en: 3 Agosto 2021, 10:30 am »

Gracias por la sugerencia pero a veces utilizo los comodines \..\ en curl y otras aplicaciones no los gestionan bien.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines