Zephir 文档翻译-内建方法

内建方法 #内建方法 如前面所说的同样,Zephir提高了面向对象设计的体验。静态类型的变量能够向对象同样使用。 请比较以下两个方法:html

public function binaryToHex(string! s) -> string
{
    var o = "", n; char ch;

    for ch in range(0, strlen(s)) {
        let n = sprintf("%X", ch);
        if strlen(n) < 2 {
            let o .= "0" . n;
        } else {
            let o .= n;
        }
    }
    return o;
}

编程

public function binaryToHex(string! s) -> string
{
    var o = "", n; char ch;

    for ch in range(0, s->length()) {
        let n = ch->toHex();
        if n->length() < 2 {
            let o .= "0" . n;
        } else {
            let o .= n;
        }
    }
    return o;
}

以上两种引用方法具备一样的效果,可是第二种使用了面向对象的编程方法。使用Zephir的面向对象的引用方法并不会形成性能损失。 ##字符串的操做表 | 面向对象的写法 | 面向过程写法| 说明| | ------------- |-------------:|:-----| | s->length() | strlen(s) | 获取字符串的长度| |s->trim()|trim(s)|去除先后空格或指定字符串| |s->trimleft()|ltrim(s)|| |s->trimright()|rtrim(s)|| |s->index("foo")|strpos(s,"foo")|搜索字符串在目标字符串中的位置| |s->lower()|strtolower(s)|转化为小写| |s->upper()|strtoupper(s)|转化为大写| |s->lowerfirst|lcfirst(s)|首字母小写| |s->upperfirst|ucfirst(s)|首字母大写| |s->format()|sprintf(s,"%s",x)|返回格式化内容| |s->md5()|md5(s)|返回md5值| |s->sha1()|sha1(s)|返回sha1值| ##数组的操做方法 | 面向对象的写法 | 面向过程写法| 说明| | ------------- |-------------:|:-----| |a->join(” ”)|join(” ”, a)|使用分隔符将数组转化为字符串| |a->rev()|array_reverse(a)|返回一个反向的数组| |a->reversed()|array_reverse(a)|返回一个反向的数组| |a->diff()|array_diff(a)|取差集| |a->flip()|array_flip(a)|键值交换| |a->walk()|array_walk(a)|对数组中的每个元素应用到用户定义函数上| |a->hasKey()|array_key_exists(a)|Checks if the given key or index exists in the array| |a->keys()|array_keys(a)|Return all the keys or a subset of the keys of an array| |a->values()|array_values(a)|Return all the values of an array| |a->split()|array_chunk(a)|Split an array into chunks| |a->combine(b)|array_combine(a, b)|Creates an array by using one array for keys and another for its values| |a->intersect(b)|array_intersect(a, b)|Computes the intersection of arrays| |a->merge(b)|array_merge(a, b)|Merge one or more arrays| |a->pad()|array_pad(a, b)|Pad array to the specified length with a value|数组

##字符串 | 面向对象的写法 | 面向过程写法| 说明| | ------------- |-------------:|:-----| |ch->toHex()|sprintf(“%X”, ch)||| ##整数 | 面向对象的写法 | 面向过程写法| 说明| | ------------- |-------------:|:-----| |i->abs()|abs(i)|||函数

相关文章
相关标签/搜索