"PHP Schwerwiegender Fehler: Klasse 'HttpRequest' nicht gefunden"

7

Ich habe versucht, dieses Problem auf viele Arten zu lösen, viele Beiträge gelesen, aber immer noch kein Glück. Ich arbeite auf einem Mac, OSX 10.7 Lion, und ich schreibe ein Plugin für eine WordPress-Site (PHP-Dateien) mit MAMP, und an einer Stelle muss ich eine HTTP-Anfrage machen:

%Vor%

Beim Ausführen dieser Anfrage ist ein Fehler aufgetreten. Wenn ich die Protokolldatei überprüft habe, lautet die folgende Meldung:

%Vor%

Ich habe bereits PEAR, PECL und die HTTP-Erweiterung (pecl_http), Xcode und seine Kommandozeilen-Tools installiert. Das habe ich gemacht:

  • hat den Pfad geändert:

    %Vor%
  • hat verifiziert, dass die Pfade für php, pear und pecl korrekt sind:

    • /Applications/MAMP/bin/php/php5.3.6/bin/php ist der Pfad für php
    • /Applications/MAMP/bin/php/php5.3.6/bin/pear für Birne
    • /Applications/MAMP/bin/php/php5.3.6/bin/pecl für pecl
  • Ich habe die Quelle für php von der MAMP-Seite heruntergeladen (und überprüft, dass die Version, die ich heruntergeladen habe, dieselbe war, die ich verwende, nämlich php5.5.3). Dann extrahierte ich den Inhalt und legte ihn in /Applications/MAMP/bin/php/php5.5.3/include/php

  • Inside /Applications/MAMP/bin/php/php5.5.3/include/php Ich habe ./configure ausgeführt
  • Ich habe ausgeführt: pecl install pecl_http
  • Ich habe diese Erweiterungen auch zur php.ini hinzugefügt (anfangs habe ich die Datei MAMP / bin / php / php5.5.3 / conf / php.ini geändert):

    %Vor%

Über die letzte in Anführungszeichen: Als ich die Erweiterung manuell hinzugefügt habe, habe ich es so gemacht: extension=http.so . Dann versuchte ich (als ich versuchte, mein Problem zu beheben) eine alternative Installation, die die php.ini automatisch änderte, und schrieb die Erweiterung mit dem quot. Marken, aber das Ergebnis war immer noch das gleiche, also machte es keinen Unterschied.

Nach all dem habe ich den MAMP-Server gestoppt und neu gestartet, aber als ich den php ausgeführt habe, habe ich immer noch den Fehler (sichtbar in der php_error.log):

%Vor%

Ich folge diesem Leitfaden hauptsächlich unter so vielen anderen: Ссылка

Ich würde jede Idee schätzen, weil ich ihnen ausgegangen bin.

    
chechab 29.03.2014, 02:55
quelle

2 Antworten

23

Die Klasse HttpRequest wird von v1 dieser PECL-Erweiterung bereitgestellt.

Erneute Installation über: $ pecl install -f pecl_http-1.7.6

Hier finden Sie jedoch Dokumentation für v2 : Ссылка

    
m6w6 17.04.2014 12:33
quelle
2

Alternativ können Sie, wenn Sie bestimmte Umgebungsvariablen nicht kontrollieren oder Pakete installieren können, versuchen, curl zu verwenden, das ein json-Objekt zurückgeben soll (unten ist ein funktionierendes Snippet eines Google API-Aufrufs).

%Vor%     
tony gil 09.07.2015 12:53
quelle

Tags und Links