各位《云客drupal源码分析》系列的读者:
本系列一直以每周一篇的速度进行博客原创更新,希望帮助大家理解drupal底层原理,并缩短学习时间,但自《插件系统(上)》主题开始博客仅发布前言和目录,这是因为云客在思考一个问题:drupal在国外如此流行但在国内却很小众,一个重要原因应该是中文资料的缺乏,我们是否能够找到一种方式来激发中文资料的出产?此时同是积极推动者的晴空提出能否用付费阅读的方式来鼓励更多作者?并建立了一个付费阅读drupal资料的网站,个人觉得也许这能激发高质量原创内容的出产,学习者支付很少费用可以节省大量学习时间是划算的,作者也能分配精力去开发高质量内容而得到报酬,drupal普及开了对大家都有益处,为了支持晴空的这个项目,云客决定将从《插件系统(上)》主题开始后续内容全部放在这个网站上收费阅读,读者只需要付很少费用即可,云客在这里承诺该系列得到的所有订阅费用全部捐献给drupal深圳社区,用以组织活动等等,发展社区需要大家贡献力量,该网站已于2017年3月29日上线,请移步:http://nowicode.com/ 阅读本篇完整版
我是云客,【云游天下,做客四方】,联系方式见主页,欢迎转载,但须注明出处
****************************************以下为前言和目录,请移步:http://nowicode.com/ 阅读本篇完整版*******************************
了解一样事物,如果不知道它是用来干什么的,那么学习起来就会很困难,不知道需求很难理解它的设计,drupal8中的类型化数据就是这样典型的情景,学习字段api和非常重要的实体之前需要明白此组件。
为什么需要类型化数据?
php为我们提供了基础的数据类型,如整型、字符串、类、接口等等,但在有些情况下,这些基本类型不够用或者说用起来不方便,比如我们经常处理电话号码,那么我们就需要一个电话号码类型,保存类似这样的数据:0755-12345678、13812345678,你可以认为php的字符串类型可以容纳它,但php却不会自动检查这些内容是否符合电话号码的特征,而要另外写检查代码,也不知道它们能不能被翻译,如果我们能定义一个电话号码类型,该类型只能保存电话号码,其他类型数据无法保存,系统可以根据类型来自动检查它的值是否符合要求,那么就很方便了,这就是为什么我们需要类型化数据组件的原因,它提供了定义一个抽象数据类型的能力。
类型化数据是什么:
类型化数据组件TypedData API的实现:
类型类:
定义类:
类型化数据管理器:
自定义数据类型:
系统默认提供的数据类型:
补充资料: