2010-12-19 91 views
13

everyone. Tengo algunos problemas en pera. Pruebo en mi servidor local (mi ruta localhost es e:\www), mi sistema es Windows XP Sp3, mi versión php es 5.2.11, la ruta es C:\Program Files\phpStudy\PHP5, ejecuto go-pear.bat en esta ruta y terminé de instalar la pera, ahora el camino de la pera está en C:\Program Files\phpStudy\PHP5\PEAR (bajo la carpeta contiene .channels, .registry, OS, PEAR, .depdb, .depdblock, .filemap, .lock, go-pear.phar), entonces corro C:\Program Files\phpStudy\PHP5\PEAR_ENV.reg y modificar el php.ini,Falló la apertura requerida 'HTTP/Request2.php' (include_path = '. C: php5 pear')

; Windows: "\path1;\path2" 
include_path = ".;C:\Program Files\phpStudy\PHP5\PEAR" 

Después de reiniciar el Apache, Probé un código simple que copia del sitio web de pear.

<?php 
require_once 'HTTP/Request2.php'; 

$request = new HTTP_Request2('http://pear.php.net/', HTTP_Request2::METHOD_GET); 
try { 
    $response = $request->send(); 
    if (200 == $response->getStatus()) { 
     echo $response->getBody(); 
    } else { 
     echo 'Unexpected HTTP status: ' . $response->getStatus() . ' ' . 
      $response->getReasonPhrase(); 
    } 
} catch (HTTP_Request2_Exception $e) { 
    echo 'Error: ' . $e->getMessage(); 
} 
?> 

pero volver

Warning: require_once(HTTP/Request2.php) [function.require-once]: failed to open stream: No such file or directory in E:\www\ct\1.php on line 2 

Fatal error: require_once() [function.require]: Failed opening required 'HTTP/Request2.php' (include_path='.;C:\php5\pear') in E:\www\ct\1.php on line 2 

Lo que está mal es? ¿Cómo resolver? Gracias.

+0

Falta el archivo e: \ www \ HTTP \ Request2.php –

Respuesta

25

Necesita instalar el paquete PEAR http_request2.

Usted puede intentar el comando ...

pear install http_request2 

suministrada por cweiske pero puede fallar con un error como ...

Failed to download pear/http_request2 within preferred state 
"stable", latest release is version 0.5.2, stability "alpha", 
use "channel://pear.php.net/http_request2-0.5.2" 

Si ve que el error necesitará instalar con el comando ...

pear install "channel://pear.php.net/http_request2-0.5.2" 

Esto puede generar un error de dependencia con respecto al paquete Net_URL2 como ....

Failed to download pear/Net_URL2 within preferred state "stable", latest 
release is version 0.3.1, stability "beta", 
use "channel://pear.php.net/Net_URL2-0.3.1" to install 
pear/HTTP_Request2 requires package "pear/Net_URL2" (version >= 0.2.0) 

Si ve un problema tal error el comando ...

pear install "channel://pear.php.net/Net_URL2-0.3.1" 

y vuelva a emitir el mandato ...

pear install "channel://pear.php.net/http_request2-0.5.2" 

y usted debe estar todo listo. El "estado" de estos paquetes puede cambiar con el tiempo, por lo que las versiones exactas en los comandos anteriores probablemente también cambien y en algún momento el comando pear install http_request2 puede comenzar a funcionar por sí mismo.

Buena suerte.

+0

este problema me ha ocupado mucho tiempo, ahora funciona, gracias 'Night Owl' – cj333

+0

Gracias por esta respuesta. Me ayudó a solucionar un problema que tuve al usar Pear para instalar PHPUnit en Ubuntu Natty – Steven

+0

Más excelente, especialmente el consejo sobre el uso del canal 'pera instalar' 'funcionó bien. –

1

Necesita instalar el paquete HTTP_Request2 de pera:

pear install http_request2 

entonces debería funcionar.