note 49925 deleted from function.define by sobak

From: Date: Fri, 02 Dec 2016 08:14:39 +0000
Subject: note 49925 deleted from function.define by sobak
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-207937@lists.php.net to get a copy of this message
Note Submitter: ---- Better pack with define() for all who really miss Java package management: Use this "manifest.php" on very first script start or copy it to your config.somehow.php. <?php $__packages = array( "org.ilove.java.more", "org.ilove.python.too", "net.php.isok" ); define("C_IS_WINDOWS", false); define("C_DIR", (C_IS_WINDOWS ? "\\" : "/")); define("C_PATH_ROOT", str_replace("/", C_DIR, $_SERVER["DOCUMENT_ROOT"]).C_DIR); define("C_PATH_CORE", C_PATH_ROOT."core".C_DIR); define("C_PATH_CLASS", C_PATH_CORE."classes".C_DIR); define("C_APPLICATION_BASE", C_PATH_CORE.C_DIR."application".C_DIR); $total_packages = 0; $i = sizeof($__packages); while($i-- > 0) { $tokens = explode(".", $__packages[$i]); $j = sizeof($tokens); while($j-- > 0) { $token = strtolower(trim($tokens[$j])); if(strlen($token) > 0 && !defined($token)) { define($token, ($j == 0 ? C_PATH_CLASS : "").$tokens[$j].C_DIR); $total_packages++; } } } define("C_PACKAGE_COUNT", $total_packages); ?> With restrictions on non-package constants, you now can call your files like that: <?php require_once org.ilove.java.more."Than.php"; ?> Regards Robi

« previous php.notes (#207937) next »