Re: cvs: php4 /pear/PEAR Dependencie.php

From: Date: Sun, 02 Dec 2001 10:02:29 +0000
Subject: Re: cvs: php4 /pear/PEAR Dependencie.php
References: 1  Groups: php.pear.cvs 
Request: Send a blank email to pear-cvs+get-1456@lists.php.net to get a copy of this message
Dependencie? Missing an S? :-) - Stig "Thomas V.V.Cox" wrote: > > cox Sat Dec 1 19:44:03 2001 EDT > > Added files: > /php4/pear/PEAR Dependencie.php > Log: > Class for checking dependencies > > > > Index: php4/pear/PEAR/Dependencie.php > +++ php4/pear/PEAR/Dependencie.php > <?php > // > // +----------------------------------------------------------------------+ > // | PHP version 4.0 | > // +----------------------------------------------------------------------+ > // | Copyright (c) 1997-2001 The PHP Group | > // +----------------------------------------------------------------------+ > // | This source file is subject to version 2.02 of the PHP license, | > // | that is bundled with this package in the file LICENSE, and is | > // | available at through the world-wide-web at | > // | http://www.php.net/license/2_02.txt. > | > // | If you did not receive a copy of the PHP license and are unable to | > // | obtain it through the world-wide-web, please send a note to | > // | license@php.net so we can mail you a copy immediately. | > // +----------------------------------------------------------------------+ > // | Authors: Tomas V.V.Cox <cox@idecnet.com> | > // | Stig Bakken <ssb@fast.no> | > // | | > // +----------------------------------------------------------------------+ > // > // $Id: Dependencie.php,v 1.1 2001/12/02 00:44:02 cox Exp $ > > /** > * Methods for dependencies check. Based on Stig's dependencies RFC > * at http://cvs.php.net/cvs.php/pearweb/rfc > * (requires php >= 4.1) > */ > > class PEAR_Dependencie > { > /** > * Package dependencies check method > * > * @param string $name Name of the package to test > * @param string $version The package version required > * @param string $rule A valid version_compare compare operator > * > * @return bool > */ > function package($name, $version = null, $rule = 'has') > { > if (empty($this->registry)) { > $this->registry = new PEAR_Registry; > } > switch ($rule) { > case 'has': > return $this->registry->packageExists($name); > break; > default: > if ($info = $this->registry->packageInfo($name)) { > return version_compare($version, > $info['version'], > $rule); > } > return false; > break; > } > } > > /** > * Extension dependencies check method > * > * @param string $name Name of the extension to test > * @param string $req_ext_ver Required extension version to compare with > * @param string $rule A valid version_compare compare operator > * > * @return bool > */ > function extension($name, $req_ext_ver = null, $rule = 'has') > { > if (!extension_loaded($name)) { > $dlext = OS_WINDOWS ? '.dll' : '.so'; > if (!@dl($name . $dlext)) { > return false; > } elseif($rule == 'has') { > return true; > } > } > // XXX Put here the code to extract the version of a extension. Stig? :) > //$ext_ver = ?????($name); > return version_compare($req_ext_ver, $ext_ver, $rule); > } > > } > > ?> > > -- > PEAR CVS Mailing List (http://pear.php.net/) > To unsubscribe, e-mail: pear-cvs-unsubscribe@lists.php.net > For additional commands, e-mail: pear-cvs-help@lists.php.net > To contact the list administrators, e-mail: php-list-admin@lists.php.net

« previous php.pear.cvs (#1456) next »