Extension:Foxway

The Foxway extension allows you to use some of the features and syntax of the programming language PHP on the wiki pages.


 * This extension does not use PHP interpreter installed on your computer for directly run custom php code! It has its own implementation of the interpreter PHP and works the same way as other extensions like Extension:ParserFunctions, but instead of use wiki syntax, uses the syntax of PHP.
 * This extension does not allow creation of raw HTML pages, because MediaWiki parser processes the foxway outputs like any other text

Usage
The tag is used to embed blocks of PHP code into wikitext, which are then executed. The standard PHP functions  may be used to pass output back to the parser.

It will display: Hello world!!!

example

Variable scope
example
 * All variables declarations persist from one block/expression to the next, throughout the page.
 * Any variable used inside a page is by default limited to the local page scope.
 * You can declare a global variables, are they also will be available through a special variable $GLOBALS
 * You can declare a static variable, are they exists only in a local page scope, but it does not lose its value when program execution leaves this scope

Parameters
$argv — Array of arguments passed to a page when it is transcluded

example

Functions
Implemented support for most of the functions PHP (array, Math, Regular expression, String and Variable handling Functions)

examples

Features

 * Easy to install: No additional libraries
 * Easy to use: Syntax is similar to PHP
 * Powerful: Has many functions for work with variables, strings, arrays, regular expressions
 * Customizable: You can specify the namespaces and functions, which is available for use with this extension
 * Integrated Debugger: Debug toolbar shows the step by step execution of operations and the values of variables

Configuration parameters

 * $wgFoxwayFunctions: Contains an array of implemented functions, which is available to users. You can disable any of the functions are at your discretion.
 * $wgNamespacesWithFoxway: For specifying the namespaces in which is allowed to use the extension Foxway.
 * $wgFoxway_max_execution_time: The maximum time that is allocated foxway (it is not CPU time, it is real time).
 * $wgFoxway_max_execution_time_for_scope: The maximum time that is allocated to each foxway scope (each of the included page)