Category Archives: PHP

call_user_func_array

call_user_func_array — Call a callback with an array of parameters

Calls the callback given by the first parameter with the parameters in param_arr.

Returns the return value of the callback, or FALSE on error.

<?php
 class Test {
 public function __call($name, $args){
 call_user_func_array(array('static', "test$name"), $args);
 }
 public function testS($l) {
 echo "$l,";
 }
 }
 
 class Test2 extends Test {
 public function testS($l) {
 echo "$l,$l,";
 }
 }
 
 
 $test = new Test2();
 $test->S('A');

?>
Share

IteratorAggregate

The IteratorAggregate is an interface to create an external Iterator.

While Iterator is an interface for external iterators or objects that can be iterated themselves internally.

IteratorAggregate is an easy way to implement an Iterator. The disadvantage is you cannot add next(), key(), etc methods, as they won’t get called during a normal foreach traversal.

If you need to implement custom methods, you need to implement an OuterIterator or (easier) to extend an IteratorIterator.

Share

Pattern Modifier

The current possible PCRE modifiers are listed below. The names in parentheses refer to internal PCRE names for these modifiers. Spaces and newlines are ignored in modifiers, other characters cause error.

i (PCRE_CASELESS)
m (PCRE_MULTILINE)
s (PCRE_DOTALL)
x (PCRE_EXTENDED)
e (PREG_REPLACE_EVAL)
A (PCRE_ANCHORED)
D (PCRE_DOLLAR_ENDONLY)
S
U (PCRE_UNGREEDY)
X (PCRE_EXTRA)
J (PCRE_INFO_JCHANGED)
u (PCRE_UTF8)

Share

stream_copy_to_stream()

int stream_copy_to_stream ( resource source, resource dest [, int maxlength [, int offset]] )

Makes a copy of up to maxlength bytes of data from the current position (or from the offset position, if specified) in source to dest. If maxlength is not specified, all remaining content in source will be copied.

stream_copy_to_stream($source_file, $destination_file);

Share

Superglobals

Several predefined variables in PHP are “superglobals”, which means that they are always accessible, regardless of scope – and you can access them from any function, class or file without having to do anything special.

The PHP superglobal variables are:

  • $GLOBALS
  • $_SERVER
  • $_REQUEST
  • $_POST
  • $_GET
  • $_FILES
  • $_ENV
  • $_COOKIE
  • $_SESSION

$_SESSION superglobals does not necessarily contain data from the client

Share