slice2php Command-Line Options
On this page:
slice2php
Command-Line Options
The Slice-to-PHP compiler, slice2php
, offers the following command-line options in addition to the standard options:
--all
Generate code for all Slice definitions, including those included by the main Slice file.
--no-namespace
Generate code without support for PHP namespaces (deprecated).
--checksum
Generate checksums for Slice definitions.
Compiler Output in PHP
For each Slice file X.ice
, slice2php
generates PHP code into a file named X.php
in the output directory. The default output directory is the current working directory, but a different directory can be specified using the --output-dir
option.
Include Files in PHP
It is important to understand how slice2php
handles include files. In the absence of the --all
option, the compiler does not generate PHP code for Slice definitions in included files. Rather, the compiler translates Slice #include
statements into PHP require
statements in the following manner:
- Determine the full pathname of the included file.
- Create the shortest possible relative pathname for the included file by iterating over each of the include directories (specified using the
-I
option) and removing the leading directory from the included file if possible.
For example, if the full pathname of an included file is/opt/App/slice/OS/Process.ice
, and we specified the options-I/opt/App
and-I/opt/App/slice
, then the shortest relative pathname isOS/Process.ice
after removing/opt/App/slice
. Replace the
.ice
extension with.php
. Continuing our example from the previous step, the translatedrequire
statement becomesrequire_once "OS/Process.php";
As a result, you can use
-I
options to tailor therequire
statements generated by the compiler in order to avoid absolute path names and match the organizational structure of your application's source files.