PHP(4)Types - Variables

PHP(4)Types - Variables

1. Types
Previous Types, Booleans, Integers, Floating point numbers, Strings, Arrays

1.1. Objects
$bar = new Foo;   new to create the object based from class
$bar->do_foo();    ->call function and method

Converting to object
$obj = (object)’hey’;
echo $obj->scalar; // ‘hey'

1.2. Resources
Resource variables hold special handlers to opened files, database connections, image canvas areas.

PHP 4’s Zend Engine, a resource with no more references to it is detected automatically and it is freed by the garbage collector.

1.3. NULL
1.4. Callbacks
//call back function
function my_callback_function(){
     echo “hello”;
}

// callback method from class
class MyClass{
     static function myCallbackMethod(){
          …snip...
     }
}

//Callback Type 1: Simple Callback
call_user_func(‘my_callback_function’);

//Callback Type 2: Static class method call
call_user_func(array(‘MyClass’, ‘myCallbackMethod’));

//Callback Type 3: Object method call
call_user_func(array($obj, ‘myCallbackMethod’));

//Callback Type 4: Static class method call
call_user_func(‘MyClass::myCallbackMethod’);

Closure
$double = function($a){
     return $a * 2;
};
$numbers = range(1, 5);
$new_numbers = array_map($double, $numbers); //2, 4, 6, 8, 10

1.5. Type Juggling
PHP does not require explicit type definition in variable declaration.
$foo = “0”; //string
$foo = $foo + 2; // integer, 2

Type Casting
$foo = 10;
$bar = (boolean) $foo; // $bar is a boolean

2. Variables

References:
http://sillycat.iteye.com/blog/1543227
http://sillycat.iteye.com/blog/1638638
http://sillycat.iteye.com/blog/2066063

http://symfony.com/doc/current/book/service_container.html
http://www.php.net//manual/en/language.oop5.php

http://www.php.net/manual/en/language.variables.php

猜你喜欢

转载自sillycat.iteye.com/blog/2302285