php SPL常用接口

  在PHP中有好几个预定义的接口,比较常用的四个接口(Countable、ArrayAccess、Iterator、IteratorAggregate(聚合式aggregate迭代器Iterator)).

  1. Countable接口

  从手册上看到,主要是 类实现 Countable 可被用于 count() 函数.

  示例:  

<?php

class ConutMe
{
    protected $_myCount = 3;

    public function count()
    {
        return $this->_myCount;
    }
}

$countable = new ConutMe();
echo count($countable); ///result is "1", not as expected

//实现接口Countable
class CountMe implements Countable
{
    protected $_myc = 4;

    public function count()
    {
        return $this->_myc;
    }
}

$countable = new CountMe();
echo count($countable);//result is "4" as expected

  总结:

  Countable这个接口用于统计对象的数量,当对一个对象调用count的时候,如果类(如CountMe)没有继承Countable,将一直返回1,如果继承了Countable会返回所实现的count方法所返回的数字.

  2. ArrayAccess接口

  非常常用,各大框架都会实现这个接口. 主要功能: 提供像访问数组一样访问对象的能力的接口。(详细看已经写的 php使用数组语法访问对象 )

3.Iterator接口

  

时间: 2024-10-06 17:43:46

php SPL常用接口的相关文章

常用接口简析3---IList和List的解析

常用接口的解析(链接) 1.IEnumerable深入解析 2.IEnumerable.IEnumerator接口解析 3.IComparable.IComparable接口解析 学习第一步,先上菜: 1 #region 程序集 mscorlib.dll, v4.0.30319 2 // C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\Profile\Client\mscorlib.dll

Java实战之02Hibernate-01简介、常用接口、CRUD操作

一.Hibernate简介 1.Hibernate在开发中所处的位置 2.ORM映射 Object :面向对象领域的 Relational:关系数据库领域的 Mapping:映射 Object: Relational public class Person{ create table presons( private String name; name varchar(100), private int age; age int // getter and setter } ); new Per

Hibernate常用接口

Hibernate的接口类型 在了解了Hibernate的基本配置,映射文件后,道路已经铺平了.我们继续往前走.接下来,我们应该做的是了解Hibernate常用的接口,对Hibernate的工作方式进一步熟悉,为我们下一步的编码做好充分的准备. ORM是复杂的,可以看看Hibernate发布里的javadoc,100+MB.如果我们单单去阅读它的API,估计一年你才能看完.然而,我们仅仅是使用他,并不需要对它了解的十分完全.我们只需要了解它的常用核心类和接口就行了.就像数据库是非常复杂的,然而我

(转)LCD:LCD常用接口原理篇

关键词:android LCD TFT TTL(RGB)  LVDS  EDP MIPI  TTL-LVDS  TTL-EDP平台信息:内核:linux2.6/linux3.0系统:android/android4.0 平台:samsung exynos 4210.exynos 4412 .exynos 5250 作者:xubin341719(欢迎转载,请注明作者)欢迎指正错误,共同学习.共同进步! 下载链接:LCD规格书(404份),之前工作用用到的 . LCD规格书00  . LCD规格书0

C# 常用接口学习 IEnumerable&lt;T&gt;

C# 常用接口学习 IEnumerable<T> 作者:乌龙哈里 时间:2015-10-24平台:Window7 64bit,Visual Studio Community 2015 本文参考: MSDN IEnumerable<T> Interface MS DotNet 源代码 你曾实现过二叉树吗--匠心十年 你可能不知道的陷阱, IEnumerable接口--沙漠之鹰 本文章节: 正文: 本文是作者摸索学习.Net的过程,逐步进行,比较繁琐,是作者本人用来帮助记忆的博文. 我

JDBC常用接口详解

JDBC中常用接口详解 ***DriverManager 第一.注册驱动 第一种方式:DriverManager.registerDriver(new com.mysql.jdbc.Driver()); 一.查看Driver的源代码可以看到,如果采用此种方式,会导致驱动程序注册两次,也就是在内存中会有两个Driver对象. 二.程序依赖mysql的api,脱离mysql的jar包,程序将无法编译,将来程序切换底层数据库将会非常麻烦. 第二种方式:Class.forName("com.mysql.

JDBC数据库编程常用接口(转)

JDBC的全称是Java DataBase Connectivity,是一套面向对象的应用程序接口(API),制定了统一的访问各种关系数据库的标准接口,为各个数据库厂商提供了标准接口的实现.这东西能够实现软件的扩平台性.JDBC是一种底层API,在访问数据库是需要在业务逻辑中直接嵌入SQL语句.JDBC不能够直接访问数据库,必须依赖数据库厂商提供的JDBC驱动程序完成以下三步工作1.同数据库建立连接:2.向数据库发送SQL语句:3.处理从数据库返回的结果. *JDBC驱动 1.JDBC-ODBC

液晶常用接口“LVDS、TTL、RSDS、TMDS”技术原理介绍

液晶常用接口“LVDS.TTL.RSDS.TMDS”技术原理介绍 1:Lvds Low-Voltage Differential Signaling 低压差分信号 1994年由美国国家半导体公司提出之一种信号传输模式,它是一种标准 它在提供高数据传输率之同时会有很低之功耗,另外它还有许多其他之优势: 1.低电压电源之兼容性 2.低噪声 3.高噪声抑制能力 4.可靠之信号传输 5.能够集成到系统级IC内 使用LVDS技术之之产品数据速率可以从几百Mbps到2Gbps. 它是电流驱动之,通过在接收端

Webx常用接口

最近在学Webx框架, 在了解webx的工作流程后, 必须要会使用自带的接口和类 常用的 Navigator  这个接口中只有两种类型的方法, 及重定向与转发, 一般用在screen包下的类(注意:screen类名称要对应screen页面的名称) @FormGroup 用来标识一个参数,使之从form service中取得<code>Group</code>对象. @FormGroup 与FormService可以达到同样效果,区别是第一个是精简版  主要用于获取.vm表单提交的表