您的位置:首页 > 其它

Zephir调用函数

2016-03-05 00:00 274 查看
原文链接:Zephir调用函数
#Zephir调用函数
PHP中提供了丰富的函数库以供使用,在Zephir中调用PHP函数只需要这样使用:

namespace MyLibrary;

class Encoder
{

public function encode(var text)
{
if strlen(text) != 0 {
return base64_encode(text);
}
return false;
}
}

你也可以调用一个可能会存在的函数或者由用户定义的函数。

namespace MyLibrary;

class Encoder
{

public function encode(var text)
{
if strlen(text) != 0 {
if function_exists("my_custom_encoder") {
return my_custom_encoder(text);
} else {
return base64_encode(text);
}
}
return false;
}
}

要注意的是PHP的函数只接受和返回动态类型的变量,如果你传入一个静态类型的变量,会自动的创建一个动态类型的变量。

namespace MyLibrary;

class Encoder
{

public function encode(string text)
{
if strlen(text) != 0 {
// an implicit dynamic variable is created to
// pass the static typed 'text' as parameter
return base64_encode(text);
}
return false;
}
}

类似的,函数返回动态类型的变量时不能直接赋值给静态类型的变量。

namespace MyLibrary;

class Encoder
{

public function encode(string text)
{
string encoded = "";

if strlen(text) != 0 {
let encoded = (string) base64_encode(text);
return '(' . encoded . ')';
}
return false;
}
}

Zephir也提供了一个方法用来动态的调用函数:

namespace MyLibrary;

class Encoder
{

public function encode(var callback, string text)
{
return {callback}(text);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: