curlopt_url中的curl和数组值不起作用

时间:2018-05-04 21:32:47

标签: php arrays curl

我有一个非常奇怪的问题,在数组中定义了curl和url。

我有一个url数组,我想在那些带curl的网址上执行http GET

for ($i = 0, $n = count($array_station) ; $i < $n ; $i++)
{
    $station= curl_init();
    curl_setopt($station, CURLOPT_VERBOSE, true);
    curl_setopt($station, CURLOPT_URL, $array_station[$i]);
    curl_setopt($station, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($station, CURLOPT_FOLLOWLOCATION, true);
    $response = curl_exec($station);
    curl_close($station);
} 

如果我以下面的方式定义我的$ array_station

$array_station=array("http://www.example.com","http://www.example2.com");

上面的代码与curl工作flawlassy,但由于我的$ array_station是以下面的方式构建(我执行扫描目录搜索特定的文件名,然后我清理网址),卷曲不起作用,没有错误显示什么都没发生..

$di = new RecursiveDirectoryIterator(__DIR__,RecursiveDirectoryIterator::SKIP_DOTS);
$it = new RecursiveIteratorIterator($di);

$array_station=array();
$i=0;
foreach($it as $file) {
    if (pathinfo($file, PATHINFO_FILENAME ) == "db_insert") {
        $string = str_replace('/web/htdocs/', 'http://', $file.PHP_EOL);
        $string2 = str_replace('/home','', $string);
        $array_station[$i]=$string2;
        $i++;
    }
}
你有什么想法吗?我放弃了: - (

2 个答案:

答案 0 :(得分:0)

我现在正在移动设备上,所以我无法测试它,但为什么要在网址中添加新行(PHP_EOL)?尝试删除新行或trim()最后的网址。

答案 1 :(得分:0)

在下面添加代码行。

如果出现卷曲错误,它将报告错误编号。

如果发出请求,它将显示HTTP请求和响应标头。请求在$ info中,响应头在$ head

$('a').on('click', function (e) {
    e.preventDefault();
    var vIDString = this.getAttribute('id');
    if (vIDString == null ||  vIDString.length == 0) {
        //do nothing
        console.log('Hit undefined')
    } else {
        console.log('ID is: ' + vIDString);
        //var vID = vIDString.substring(8);
    }
})