1

私の最も賢い友人に、私はググってすべてを試しました. これは、問題を確認/理解できない深夜に過ぎないと確信しています。私はまだ機能的なものから OOP に切り替える過程にあり、curl を有効にすることができたのはこれが初めてです。:(したがって、悪い慣行についても自由に批判してください..

<?php
class urlValidation
{
    public $content;
    public $validUrl;
    public function __construct($validUrl)
    {
        $this->content = $content;
        $this->validUrl = $validUrl;
        $this->getContents();
    }
    public function getContents()
    {
        $this->curlHandler = curl_init($this->validUrl);
        curl_setopt($this->curlHandler, CURLOPT_NOBODY, false);
        curl_setopt(CURLOPT_RETURNTRANSFER, false); //changing false to true is the answer!
        $this->content = curl_exec($this->curlHandler);
        curl_close($this->curlHandler);
    }
}
?>

から呼び出された

$suggestUrl = 'http://www.google.com';
$validate = new urlValidation($suggestedUrl);

私の最善を尽くして、 $this->content が呼び出されずに画面に出力される理由を理解できません。返された HTML を変数に格納し、ドキュメントに返されたり、印刷されたり、追加されたりしないようにしたいだけです。

4

1 に答える 1

3

PHP のドキュメントですべて説明されています ;)

curl_exec成功すると TRUE を返し、失敗すると FALSE を返します。ただし、CURLOPT_RETURNTRANSFERオプションが設定されている場合、成功すると結果が返され、失敗すると FALSE が返されます。

したがって$this->content = curl_exec($this->curlHandler);、これを追加する前に

curl_setopt($this->curlHandler, CURLOPT_RETURNTRANSFER, true);
于 2012-09-06T06:39:00.380 に答える