PHP数组和API的问题
我正在做一个关于SEMRUSH api的项目,结果将在$field1中公布;字段2被分隔开 我得到的当前结果基于列有5个reslts,但我只需要第二个数组PHP数组和API的问题,php,arrays,Php,Arrays,我正在做一个关于SEMRUSH api的项目,结果将在$field1中公布;字段2被分隔开 我得到的当前结果基于列有5个reslts,但我只需要第二个数组 if (isset($_POST['search_term'])) { $kwtext1 = str_replace(" ", '+', ($_POST['search_term'])); $kwtext = str_replace("\r", '', trim($kwtext1)); $
if (isset($_POST['search_term'])) {
$kwtext1 = str_replace(" ", '+', ($_POST['search_term']));
$kwtext = str_replace("\r", '', trim($kwtext1));
$kwdata = array();
$kwlines = explode("\n", $kwtext);
$db = "us";
$limit = "10";
}
foreach ($kwlines as $kw) {
usleep(100);
$u = 'http://' . $db . '.api.semrush.com/?action=report&type=phrase_this&phrase=' . $kw . '&key=' . $key . '&display_limit=' . $limit . '&display_offset=0&export=api&export_columns=Ph,Nq,Cp,Co,Nr';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $u);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$answer = curl_exec ( $ch );
$kwdata = explode ( "\n", trim ( $answer ) );
$kwfields = explode ( ";", array_shift ( $kwdata ) );
if ( count ( $kwdata ) > 0 )
{
?>
<table class="output">
<tr><th>Domain 1</th>
<?php $csv_output .= ' ' . ", " . 'Domain' . ", ";?>
<?
foreach ( $kwfields as $field )
{
?>
<th><?= $field; ?></th>
<?php $csv_output .= $field . ", ";?>
<?
}
?>
</tr>
<?
foreach ( $kwdata as $dataline )
{
$values = explode ( ";", $dataline, count ( $kwfields ) );
?>
<tr><td><? echo $kw ?></td>
<?php $csv_output .= $kw . ", ";?>
<?
foreach ( $values as $value )
{
?>
<td><?= $value; ?></td>
<?php $csv_output .= $value . ", ";?>
<?
}
?>
</tr>
<?
}
?>
</table>
<?
}
else
{
?>
No data found for your request
<?
}
}
?>
if(isset($\u POST['search\u term'])){
$kwtext1=str_replace(“,“+”,($_POST['search_term']);
$kwtext=str_替换(“\r”,”,修剪($kwtext1));
$kwdata=array();
$kwlines=分解(“\n”,$kwlines);
$db=“us”;
$limit=“10”;
}
foreach($kwlines作为$kw){
usleep(100);
$u='http://'.$db.'.api.semrush.com/?action=report&type=phrase\this&phrase='.$kw.&key='.$key.&display\u limit='.$limit.&display\u offset=0&export=api&export\u columns=Ph、Nq、Cp、Co、Nr';
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$u);
curl_setopt($ch,CURLOPT_头,0);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
$answer=curl_exec($ch);
$kwdata=explode(“\n”,trim($answer));
$kwfields=explode(;),数组移位($kwdata));
如果(计数($kwdata)>0)
{
?>
域1
找不到您请求的数据
如果您只想要第二个结果,并且您知道您将得到5个结果,那么我假设更改行:
$kwfields = explode(";", array_shift($kwdata));
致:
会有用的
但是,如果您没有至少2行数据,则此操作将失败。您是否保证获得2行或更多数据?如果没有,则需要对此进行检查。您的问题到底是什么?它不会返回任何内容。如果您希望在此处获得foreach($value作为$value){}
foreach($i作为$value的值=>$value)的第二个结果,请告诉我{if($i==1){/*stuff*/}}
$kwfields = explode(";", $kwdata[1]);