1

Centos 5.9、PHP 5.4、および古い PHP プログラム拡張機能 (typo3 CMS) でこのエラー メッセージが表示されます。

PHP 致命的なエラー: 279 行目の class.tx_spscoutnetcalendar_pi1.php で呼び出し時の参照渡しが削除されました

これは、php コード関数に類似しています。

    // ********* Start XML code *********
    // get XML data from an URL and return it
    function fetchCalendarData($xmlUrl,$timeout) {

            $xmlSource="";
            $url = parse_url($xmlUrl);

            $fp = fsockopen($url['host'], "80", &$errno, &$errstr, $timeout);
            if ($fp) {
                    fputs($fp, "GET ".$url['path']."?".$url['query']." HTTP/1.1\r\nHost: " . $url['host'] . "\r\n\r\n");
                    while(!feof($fp))
                    $xmlSource .= fgets($fp, 128);
            }
                    // strip HTTP header
        if ($pos = strpos($xmlSource,"<?xml")) { // this has to be the first line
            $xmlSource = substr($xmlSource, $pos);
        } else {
            $xmlSource="";
        }
    // I have no idea why, but at the end of the fetched data a '0' breaks the XML syntax and provides an 
    // error message in the parser. So I just cut the last 5 characters of the fetched data
    $xmlSource = substr($xmlSource,0,strlen($xmlSource)-5);
            return $xmlSource;
    }

そして、特定のこの行279

$fp = fsockopen($url['host'], "80", &$errno, &$errstr, $timeout);

ここで何か助けてください、私はphpの専門家ではありません。

4

1 に答える 1

5

&次のように先頭を削除するだけです。

$fp = fsockopen($url['host'], "80", $errno, $errstr, $timeout);

&変数は引き続き参照によって渡されますが、PHP 5.4 以降ではそれを示す必要はありません。

于 2013-10-29T11:36:47.263 に答える