Example --
How to use System_Folders
Using System_Folders
Example 56-1. General usage <?php
require_once 'System/Folders.php';
$sf = new System_Folders();
$arData = array(
'Username' => $sf->getUserName(),
'Home' => $sf->getHome(),
'Documents' => $sf->getDocuments(),
'Shared documents' => $sf->getSharedDocuments(),
'Temp' => $sf->getTemp(),
'Desktop' => $sf->getDesktop(),
'AppData' => $sf->getAppData(),
'Programs' => $sf->getPrograms(),
'Windows' => $sf->getWindows()
);
echo 'System: ' . $sf->getSys() . "\r\n";
var_dump($arData);
?> |
|
At first, you need to instantitiate a new
System_Folders object. The operating
system is determined there, which is needed for all the
other methods.
Then just use the getXXX() methods to retrieve
the folder locations. Remember that they return NULL
if the location can't be determined.
Using System_Folders_Cached
Example 56-2. General usage <?php
require_once 'System/Folders/Cached.php';
$sf = new System_Folders_Cached();
//show the path of the config file
echo 'Config file: ' . $sf->getDefaultConfigFile() . "\r\n";
//load the stored settings from last time
$err = $sf->loadFromFile();
echo 'Home: ' . $sf->getHome() . "\r\n";
echo 'Documents: ' . $sf->getDocuments() . "\r\n";
echo "\r\n";
$doc = $sf->getDocuments();
if (file_exists($doc)) {
echo "Setting new Documents directory\r\n";
//Set an own documents directory
// and save the settings for next time
$sf->setDocuments('/strange/path/to/MyDocuments/');
$sf->saveToFile();
echo 'New Documents directory: ' . $sf->getDocuments() . "\r\n";
echo "Run this program again to reset the path to default\r\n";
} else {
//unset the path
echo "Unsetting the documents directory\r\n";
$sf->setDocuments(null);
$sf->saveToFile();
echo 'New Documents directory: ' . $sf->getDocuments() . "\r\n";
}
?> |
|
This example displays the location of the config file (in which
the folder settings are stored), shows some folder locations and
sets the documents directory to a (probably non-existing) directory
and saves the folder locations.
In the next program call, the documents directory is reset to the
normal one and saved again.