/** * * @param CurlMulti_Core $curlmulti * @param string $url * @param string $dir */ function __construct($url, $dir) { parent::__construct(); $this->startTime = time() - 1; if (is_array($url)) { $urlNew = array(); foreach ($url as $k => $v) { if (is_array($v)) { foreach ($v as $k1 => $v1) { $path = ''; if ('/' != $v1) { $path = '/' . ltrim($k1, '/'); } $urlNew[rtrim($k, '/') . $path] = $v1; } } elseif (is_string($v)) { $urlNew[] = $v; } else { user_error('url is invalid', E_USER_ERROR); } } $url = $urlNew; } else { user_error('url is invalid', E_USER_ERROR); } foreach ($url as $k => $v) { if (!$this->isUrl($k)) { user_error('url is invalid, url=' . $k, E_USER_ERROR); } } if (!is_dir($dir)) { user_error('dir not found, dir=' . $dir, E_USER_ERROR); } $this->url = $url; $this->dir = $dir; }
/** * (non-PHPdoc) * @see CurlMulti_Base::url2uri() */ function url2uri($url, $urlCurrent) { $path = parent::url2uri($url, $urlCurrent); if (!isset($path)) { $urlDir = $this->urlDir($urlCurrent); $path1 = $this->getPath($url); $path2 = ltrim(parse_url($urlDir, PHP_URL_PATH), '/'); $arr2 = explode('/', rtrim($path2, '/')); $path = '../'; foreach ($arr2 as $v) { $path .= '../'; } $path .= $path1; } return $path; }
function cbCurlInfo($info) { echo "\n"; parent::cbCurlInfo($info); echo "\n"; }