summaryrefslogtreecommitdiffstats
path: root/user_guide_src/source/general/alternative_php.rst
diff options
context:
space:
mode:
authorKyle Farris <kylefarris@kylefarris.gotdns.org>2011-10-14 21:43:25 +0200
committerKyle Farris <kylefarris@kylefarris.gotdns.org>2011-10-14 21:43:25 +0200
commitad17f4b932b3728c1e299b48f28b3ae0dbdd6b0b (patch)
treefdb357433e76000bdef60c4d18e5ab0540b07aeb /user_guide_src/source/general/alternative_php.rst
parentdb46d02ac23b8e0bc2416e197494d3b795b57530 (diff)
parenta2125a5d830fd390b4cf35f77e9bb0558cfa2dd7 (diff)
Merged with development
Diffstat (limited to 'user_guide_src/source/general/alternative_php.rst')
-rw-r--r--user_guide_src/source/general/alternative_php.rst76
1 files changed, 76 insertions, 0 deletions
diff --git a/user_guide_src/source/general/alternative_php.rst b/user_guide_src/source/general/alternative_php.rst
new file mode 100644
index 000000000..4dc857a50
--- /dev/null
+++ b/user_guide_src/source/general/alternative_php.rst
@@ -0,0 +1,76 @@
+###################################
+Alternate PHP Syntax for View Files
+###################################
+
+If you do not utilize CodeIgniter's :doc:`template
+engine <../libraries/parser>`, you'll be using pure PHP in your
+View files. To minimize the PHP code in these files, and to make it
+easier to identify the code blocks it is recommended that you use PHPs
+alternative syntax for control structures and short tag echo statements.
+If you are not familiar with this syntax, it allows you to eliminate the
+braces from your code, and eliminate "echo" statements.
+
+Automatic Short Tag Support
+===========================
+
+.. note:: If you find that the syntax described in this page does not
+ work on your server it might be that "short tags" are disabled in your
+ PHP ini file. CodeIgniter will optionally rewrite short tags on-the-fly,
+ allowing you to use that syntax even if your server doesn't support it.
+ This feature can be enabled in your config/config.php file.
+
+Please note that if you do use this feature, if PHP errors are
+encountered in your **view files**, the error message and line number
+will not be accurately shown. Instead, all errors will be shown as
+eval() errors.
+
+Alternative Echos
+=================
+
+Normally to echo, or print out a variable you would do this::
+
+ <?php echo $variable; ?>
+
+With the alternative syntax you can instead do it this way::
+
+ <?=$variable?>
+
+Alternative Control Structures
+==============================
+
+Controls structures, like if, for, foreach, and while can be written in
+a simplified format as well. Here is an example using foreach::
+
+ <ul>
+
+ <?php foreach ($todo as $item): ?>
+
+ <li><?=$item?></li>
+
+ <?php endforeach; ?>
+
+ </ul>
+
+Notice that there are no braces. Instead, the end brace is replaced with
+``endforeach``. Each of the control structures listed above has a similar
+closing syntax: ``endif``, ``endfor``, ``endforeach``, and ``endwhile``
+
+Also notice that instead of using a semicolon after each structure
+(except the last one), there is a colon. This is important!
+
+Here is another example, using ``if``/``elseif``/``else``. Notice the colons::
+
+ <?php if ($username == 'sally'): ?>
+
+ <h3>Hi Sally</h3>
+
+ <?php elseif ($username == 'joe'): ?>
+
+ <h3>Hi Joe</h3>
+
+ <?php else: ?>
+
+ <h3>Hi unknown user</h3>
+
+ <?php endif; ?>
+