Hinzufügen habe ich vier Eingänge:ein Element in einem dynamischen Array
<form id="query" method="POST">
<input type="text" name="mainUrl" style="width:350px; border-radius:3px;">
<input type="text" name="competitorUrl1" style="width:350px; border-radius:3px;">
<input type="text" name="competitorUrl2" style="width:350px; border-radius:3px;" >
<input type="text" name="competitorUrl3" style="width:350px; border-radius:3px;">
</form>
kehre ich die Eingänge wie folgt aus:
public function getAlexaAverageRankData($params){
$return = [];
if (!empty($params["mainUrl"])){
$return["mainUrl"] = $this->getAverageRank($params["mainUrl"]);
}
if (!empty($params["competitorUrl1"])){
$return["competitorUrl1"] = $this->getAverageRank($params["competitorUrl1"]);
}
if (!empty($params["competitorUrl2"])){
$return["competitorUrl2"] = $this->getAverageRank($params["competitorUrl2"]);
}
if (!empty($params["competitorUrl3"])){
$return["competitorUrl3"] = $this->getAverageRank($params["competitorUrl3"]);
}
return $return;
}
Wo params die folgenden Parameter sind:
protected function buildQueryParams($site) {
$params = array(
'Action' => self::$ActionName,
'ResponseGroup' => self::$ResponseGroupName,
'AWSAccessKeyId' => $this->accessKeyId,
'Timestamp' => self::getTimestamp(),
'Count' => self::$NumReturn,
'Start' => self::$StartNum,
'SignatureVersion' => self::$SigVersion,
'SignatureMethod' => self::$HashAlgorithm,
'Url' => $site
);
ksort($params);
$keyvalue = array();
foreach($params as $k => $v) {
$keyvalue[] = $k . '=' . rawurlencode($v);
}
return implode('&',$keyvalue);
}
Und das ist das Array, das ich zurückgebe:
$nice_array = array(
'Rank' => $info->TrafficData->Rank,
'Links In Count' => $info->ContentData->LinksInCount,
'Site' => $info->getAlexaAverageRankData($params),
);
return $nice_array;
Das Problem ist, dass mein Array jetzt nur Rank
und Links In Count
enthält. Ich muss auch einen Eintrag im Array für jede URL haben, die der Benutzer in diese Eingabe eingegeben hat. Die Methode, die ich verwende, um die URLs zurückzugeben, funktioniert, aber ich muss sie in nice_array
Echo. Wie kann ich das machen? Es tut mir leid, wenn einige Dinge unklar sind, vertrau mir, dass sie mir auch unklar sind ... Ich bin ein Anfänger und ich weiß nicht, wie ich dieses Problem lösen soll. Meine Array-Struktur sieht wie folgt jetzt:
["data"]=>
object(stdClass)#227 (2) {
["mainUrl"]=>
object(stdClass)#233 (2) {
["Rank"]=>
object(stdClass)#236 (1) {
["0"]=>
string(8) "20231208"
}
["Links In Count"]=>
object(stdClass)#235 (0) {
}
}
["competitorUrl1"]=>
object(stdClass)#239 (2) {
["Rank"]=>
object(stdClass)#240 (1) {
["0"]=>
string(5) "24971"
}
["Links In Count"]=>
object(stdClass)#241 (1) {
["0"]=>
string(3) "640"
}
}
}
Wenn es etwas unklar, fragen Sie mich und ich werde versuchen, es Ihnen zu erklären ... Es tut mir leid für diese zweideutige Frage, ich mein Bestes tue, um Dinge klar. Danke für deine Zeit und Hilfe. (Weitere Informationen hier: https://gist.github.com/michaelwowro/4130431)
Aber es sollte als Null in Array tho ', oder? – Alphonse
hm am ende ihrer frage zeigen sie ein array - aber dieses array ist nicht $ nice_array –