За последние 24 часа нас посетили 23687 программистов и 1555 роботов. Сейчас ищут 853 программиста ...

снова multicurl

Тема в разделе "PHP для новичков", создана пользователем Slavka, 11 янв 2017.

  1. Slavka

    Slavka Активный пользователь

    С нами с:
    1 окт 2013
    Сообщения:
    722
    Симпатии:
    41
    доброе время суток
    в 1 месте делаю так
    PHP:
    1.  $ch = curl_init();
    2. ...
    3.         curl_multi_add_handle($this->mh, $ch);
    4.           $this->connectionArray[$ch]["url"] = $url  // line1
    5. ;
    согластно инстукции curl_multi_remove_handle второй параметр это как раз и есть наш $ch
    и приходит он воот с такой функции
    $info = curl_multi_info_read($this->mh);

    соответственно делаю вот так

    PHP:
    1. echo "URL:". $this->connectionArray[$info["handle"]]["url"] ;  
    2. echo curl_multi_getcontent($info["handle"])."<br><hr>";
    3.         curl_multi_remove_handle($this->mh,$info["handle"]);
    и получаем вооот такую ошибку
    Strict standards: Resource ID#3 used as offset, casting to integer (3) in line1

    Можно конечно подавить ошибку - потому как ссылку он выдает ..
    но думаю надо как то исправлять ее..


    примерно вот так выглядит $info
    Код (Text):
    1. $info =
    2. array (size=3)
    3.   'msg' => int 1
    4.   'result' => int 0
    5.   'handle' => resource(7, curl)
    я конечно понимаю что хендлер не хорошо использовать в качестве параметра массива .. это был всего лишь тест


    каким образом можно получаемые данные вообше ассоциировать с сылкой

    в инете какието совсем разные противоречивые советы по поводу курла - как будто библиотеку обновили , в доках инфа старая и что откуда брать хз
     
    #1 Slavka, 11 янв 2017
    Последнее редактирование: 11 янв 2017
  2. Slavka

    Slavka Активный пользователь

    С нами с:
    1 окт 2013
    Сообщения:
    722
    Симпатии:
    41
    мда.. походу у вас реальный пунктик на курлах - и говорю еще раз мне не воровать надо данные - мне надо с ними работать !
    я должен их получить выписки ир росреестра ..

    пока получилось вот таким странным образом

    создаем массив с хеадерами
    PHP:
    1.    curl_multi_add_handle($this->mh, $ch);
    2.         $this->connectionArray[$this->url_count]["ch"] = $ch;
    3.         $this->connectionArray[$this->url_count]["url"] = $url;

    а когда надо выискивать ... делаю так

    PHP:
    1.  echo "URL:".  $this->connectionArray[array_search($info["handle"] , array_column($this->connectionArray, 'ch'))]['url'];
    жуть конечно .. но работает без ошибок