2016-12-24 4 views
0

analysieren Ich versuche, HTML-Inhalt zu analysieren, für den Wert in der Namenskennung gespeichert.PHP Inhalt für Eingabe-> Name Wert

Mein aktueller Versuch sieht wie folgt aus:

function getAuthToken(){ 
    $html = file_get_contents('url'); 
    $values = array(); 

    foreach($html->find('input') as $element) 
    { 
     $values[$element->name] = $element->value; 
    } 

    print_r($values); 
} 

Was mache ich falsch?

+1

Warum nicht DomDocument versuchen? http://StackOverflow.com/a/5045619/4802649 – Phiter

+2

Soweit ich weiß '' file_get_contents' gibt eine Zeichenfolge zurück. – Federkun

Antwort

0

$ html in Ihrem Code ist kein Objekt eine Zeichenfolge (die Ergebnisse von file_get_contents).

$ object-> Name ist ein Objekt der Klasse

$ array [key] ist ein Array-Element

Keine von diesen in Ihrem Code wird tun, was Sie mit dem Ergebnis von file_get_contents erreichen wollen, weil Ihr $ html var ist eine Zeichenkette, Sie müssen einige Zeichenketten analysieren, um die gewünschten Ergebnisse zu erhalten.

können Sie überprüfen, ob mit:

echo gettype($html); 

können Sie auch echo nur $ html, um herauszufinden, was die Zeichenfolge wie sieht man eine bessere Vorstellung davon zu geben, was Sie arbeiten mit, zum Beispiel, ist Es gibt einen gemeinsamen Charakter, dass Sie den Stachel mit einem explodieren können, so dass Sie ein Array bekommen, mit dem Sie innerhalb Ihrer Foreach arbeiten können.

Beispiel:

$newarray = explode('&', $html); 

foreach ($newarray as $key => $value) { 
//do your thing 
}