$log_template
$log_template : string
The template for log messages in ::Log()
MkFolder(string $root, array $components, boolean $make = true) : string|boolean
Create folder path
When the make argument set to true this function will try create the folder Return the folder components without root part
string | $root | The path to the base folder |
array | $components | The list of folder components |
boolean | $make | Try to create the folder |
The combined relative path as string
CopyFile(string $source, string $target) : \FAA\Obj\Result
Copy file Copy a single file with obtaining lock on index before
string | $source | Absolute path to source |
string | $target | Absolute path to target |
A system result object
CopyFolder(string $source, string $target) : \FAA\Obj\Result
Copy folder This method copies the source folder to the target folder path. The folder itself is not coiped but all of its contents.
This method creates the target folder f it is not present.
string | $source | The source folder destination |
string | $target | The target folder name |
A system result object
FileExists(string $fileName, boolean $caseSensitive = true) : boolean
Check if file exists
Does check if a file is existing, will also check if the file exists as lower case by glob as fallback.
string | $fileName | The path to the file |
boolean | $caseSensitive | Use case sensitive path, defaults to true |
File exists
ReadFixedColumnFile(string $path, integer $length = 10000) : \FAA\Obj\Result
Read file with fixed column width
Automatic file parser based on the heads and assuming a " " space is used to make the cols equal
string | $path | Absolute link to the file to open |
integer | $length | Limiter for line length |
A system result object
ReadCsv(string $path, string $delimiter = ';', string $enclosure = "'", integer $length = 100000, string $escape = "\\", boolean $check_head = true) : \FAA\Obj\Result
Read a CSV file to local storage
Fetch the file and add it to a local result object file is parsed with php function to get csv from file, arguments of this methods align with official one
string | $path | The absolute path to file to open |
string | $delimiter | Have a look at http://php.net/manual/de/function.fgetcsv.php delimiter |
string | $enclosure | Have a look at http://php.net/manual/de/function.fgetcsv.php enclosure |
integer | $length | Have a look at http://php.net/manual/de/function.fgetcsv.php length |
string | $escape | Have a look at http://php.net/manual/de/function.fgetcsv.php escape |
boolean | $check_head | When set, check the first line as head and validate following line lengths |
A system result object
WriteCsv(string $path, array $list, string $delimiter = ';', string $enclosure = "'", string $escape = "\\") : \FAA\Obj\Result
Write a array of entries to csv file
string | $path | The absolute path to file to open |
array | $list | The source to write |
string | $delimiter | Have a look at http://php.net/manual/de/function.fgetcsv.php delimiter |
string | $enclosure | Have a look at http://php.net/manual/de/function.fgetcsv.php enclosure |
string | $escape | Have a look at http://php.net/manual/de/function.fgetcsv.php escape |
The write result
Unzip(string $file, string $target = null) : \FAA\Obj\Result
Unzip a file
Take the archive, unzip it and place the results in the defined folder or an automated one
string | $file | Absolute path to file |
string | $target | The output folder or, null for dynamic one |
The unzip result
Zip(string $source, string $target) : \FAA\Obj\Result
Create a zip archive from folder or file contents
string | $source | |
string | $target |
TailLogfile(string $path, integer $max = 200, integer $buffer = 4096) : \FAA\Obj\Result
tail a log file get set of lines inside a logfile
string | $path | The target log file path |
integer | $max | Maximum buffer length of array |
integer | $buffer | Maximum buffer length of line characters |
A default system result object
GetLock() : \FAA\Obj\Result
obtain lock try to obtain the lock indicated by lock file in var
A default system result object
TryUnLock(integer $pid, string $path = null) : boolean
obtain lock with retry try to obtain the lock indicated by lock file in var
integer | $pid | Additional lock level reliability with process id |
string | $path | Path to lock file to obtain lock at |
A default system result object
TryGetLock(string $path = null, integer $try_count = FAA_WRITE_RETRY, float $seconds = 0.25, integer $pid) : boolean
obtain lock with retry try to obtain the lock indicated by lock file in var
string | $path | Path to lock file to obtain lock at |
integer | $try_count | Number of retry runs |
float | $seconds | Seconds to wait per run |
integer | $pid | Additional lock level reliability with process id |
True on successful lock otherwise false
RevokeLock() : \FAA\Obj\Result
release lock try to release the lock indicated by lock file in var
A default system result object
GzCompressFile(string $source, integer $level = 9, boolean $clean = true) : \FAA\Obj\Result
GZIPs a file on disk (appending .gz to the name)
From http://stackoverflow.com/questions/6073397/how-do-you-create-a-gz-file-using-php Based on function by Kioob at: http://www.php.net/manual/en/function.gzwrite.php#34955
string | $source | Path to file that should be compressed |
integer | $level | GZIP compression level (default: 9) |
boolean | $clean | Clean source file after compression (default: true) |
A default system result object
DecodeJsonFile(string $path, $mode = true, $crypt = false) : \FAA\Obj\Result
parse json from file to object or assoc use the json parse to fetch text data from a given path and return it as object with assoc or object payload
string | $path | The absolute path to a certain storage file |
$mode | (boolean) Parse as assoc or object, default assoc |
|
$crypt | (boolean) Decrypt string before parsing |
A default system result object
DecodeJson(string $data, boolean $mode = true, boolean|string $crypt = false) : \FAA\Obj\Result
Parse json from string to object or assoc
Use the json parse function to decode a string to assoc or object It will use the given code in crypt to decrypt or fall back to system key
string | $data | The payload to decode |
boolean | $mode | Parse as assoc or object, default is true and therefor assoc array |
boolean|string | $crypt | Decrypt string before parsing |
A default system result object
EncodeJson(mixed $data, integer $mode = JSON_PRETTY_PRINT, boolean $crypt = false) : \FAA\Obj\Result
Serialize a given input to json representation use the json parse function to decode an assoc or object
mixed | $data | The payload to encode |
integer | $mode | Serialize readable or unformatted |
boolean | $crypt | Encrypt the result after serialisation |
A default system result object
StoreEncodedJson(string $path, mixed $data, integer $mode = JSON_PRETTY_PRINT, boolean $crypt = false) : \FAA\Obj\Result
serialize a given input use the json parse function to create json representation and store it in a certain file this method does a encryption also on demand
string | $path | The target file path |
mixed | $data | The payload to encode |
integer | $mode | Serialize readable or not formatted |
boolean | $crypt | Encrypt the result after serialisation |
A default system result object
WriteFile(string $path, string $data, integer $flags) : boolean
Write string to file This method writes the given data to the defined file, it will wait when the system is in git lock mode.
This method returns valid result also for writing empty strings unlike file put contents default behavior
string | $path | The target file path |
string | $data | The payload to store in the target file |
integer | $flags | File put content flags (http://php.net/manual/de/function.file-put-contents.php) |
True on success otherwise false
ListIdFiles(string $dir, string $ext = 'json', boolean $to_int = true) : array
find file ids find a list of file ids inside a folder and its sub directories
string | $dir | The root folder path to search in |
string | $ext | Filter by extension |
boolean | $to_int | Convert to integer when set to true |
A list containing the found id's
ReadFolder(string $dir) : array<mixed,\FAA\Obj\Sys\File>
Read folder
Will list all files and folders of a folder
string | $dir | Path to root folder |
An array of file objects
ListFiles(string $dir, string $ext = '/^json$/', boolean $full = false) : array
list files Iterate over directory and list the found files
string | $dir | The root folder path to search in |
string | $ext | Filter by extension (can be empty, a string or a regex) |
boolean | $full | Check the full name of the file or just the extension when false |
A list containing the found files
DropFolder(string $folder, boolean $full = false) : array
Delete a full folder this method clears or delete a folder recursively, side effect will fill list of delete folders and files
string | $folder | The path to delete |
boolean | $full | Also remove the root folder |
List of deleted folders and files
FilterFolderFilesByModificationTime(string $root, integer $timestamp, boolean $older = true) : \FAA\Obj\Result
Get a list of files that are either older or newer a certain time point
string | $root | The start point for the recursion |
integer | $timestamp | The time point to flip |
boolean | $older | When true result list files are older than the time stamp otherwise newer |
A system result object containing the files
ConfigGetPreset(string $name) : \FAA\Obj\Result
Load a config preset
Fetch a preset from default system storage location and return it decoded
string | $name | The preset name |
A system result object
VersionStringToNumber(string $number, string $regex = '/[^0-9\.]/i', string $replace = '', integer $pads = 4) : string
Convert version number Converts the given number to a unified string e.g. 'v1.234.33' will become 102340033
string | $number | The version number to calculate |
string | $regex | Replacement expression to clear the number upfront |
string | $replace | Replacement string for regex_replace |
integer | $pads | Add this amount of zeros to the left |
The cleared version number
CallExecutable(string $cmd, string $folder, string $outfile = '') : \FAA\Obj\Result
Execute a system command Uses installed executable to perform a system call
string | $cmd | The command to execute |
string | $folder | The working directory |
string | $outfile | Optional output file of the call result |
A system result object
GetMountedHardDrives() : \FAA\Obj\Result
list available disk space use system commands to retrieve disk informations, this method is partial cached On windows we use fsutil on *nix we use df -h
A default system result object
GetSortKey(string $text, string $collation = FAA_LOCALE, boolean $encode = false) : \FAA\Obj\Result
Calculate the sort key Using the ICU collator to create a sort key representation of the given string.
string | $text | The text to convert to sort key |
string | $collation | The collation to use for convert e.g. en_US or, de |
boolean | $encode | When set to true, convert the sort key to urlencoded representation |
A default system result object
IsBase64(string $string, boolean $simple = true) : boolean
guess if string is base64 will try to guess if the given string is base64
string | $string | The string to check |
boolean | $simple | Use a simple method to check the given content |
True on success otherwise false
Encrypt(string $encrypt, string $mc_key = FAA_CODE) : string
encrypt data will try to encrypt the given data with the system encryption code or a customer defined one The function does a blowfish encryption and a base64 conversion
string | $encrypt | The string to encrypt |
string | $mc_key | The key |
The encrypted string base64 encoded
Decrypt(string $encrypted, string $mc_key = FAA_CODE) : string
decrypt data will try to decrypt the given data with the system encryption code or a customer defined one The function does a blowfish decryption and a base64 conversion on demand
string | $encrypted | The string to decrypt (must be base64 encoded) |
string | $mc_key | The key |
The decrypted string