红茶的个人站点

  • 首页
  • 专栏
  • 开发工具
  • 其它
  • 隐私政策
PHP
PHP

PHP学习笔记20:预定义接口

图源:php.net Traversable 这是一个代表可迭代类型的基本接口,其本身并没有任何方法: interface Traversable { } 所以不能直接通过实现该接口来让类具备迭代功能,该接口仅仅用来判断一个类型是否具有迭代能力: <?php //数组 $arr = [1, 2, 3]; var_dump($arr instanceof Traversable); // bool(false) //生成器 function create_gen(): Generator {    yield …

2021年12月14日 0条评论 1307点热度 0人点赞 魔芋红茶 阅读全文
PHP

PHP学习笔记19:引用

图源:php.net 有意思的是,是否支持引用还是指针已经变成了区分编程语言的特征之一。比如: C只支持指针。 C++是同时支持引用和指针的。 Python不需要明确指定使用引用还是指针,因为Python中所有的变量都是对象,都是引用。 Java支持引用,不支持指针。 Go lang支持指针,不支持引用。 PHP支持引用,不支持指针。 关于Python变量的内容,可以阅读Python学习笔记25:再谈变量。 所以在谈论php的引用前,我们必须先搞懂什么是指针,什么是引用,它们之间的区别。 指针和引用 有一个比喻比较…

2021年12月13日 0条评论 1572点热度 1人点赞 魔芋红茶 阅读全文
PHP

PHP学习笔记18:协程

图源:php.net 正如Python关于协程的PEP所讲,异步编程和并发已经是编程的一个热门领域,所以无论是老派语言如Python,或者是新语言Go,要么是添加新特性以支持协程,要么是天生就对协程和并发有完整支持。 但在这方面php就相当落(la)后(kua)了。 或许这和语言的应用领域和使用方式有一些关系,php作为一个和Apache等web service紧密结合的Web开发语言,绝大部分php项目都是依托于web service处理和转发请求的,php本身并不需要花大力气去管理并发和进程,至少开发者不需要。…

2021年12月11日 0条评论 1216点热度 0人点赞 魔芋红茶 阅读全文
PHP

[转载]PHP创始人​​​​​​​和Swoole创始人投反对票,协程提案Fiber引激辩

本文转载自https://zhuanlan.zhihu.com/p/357430585 出品|开源中国 文|局长 PHP 社区上周(3月8日)发起了将 Fiber RFC 添加到 PHP 的投票。 根据 Fiber RFC 中的描述,Fiber 主要用于为异步 I/O 实现协程,提供了独立栈分配、函数调用的暂停和恢复功能,它将作为扩展集成到 PHP 中:https://github.com/amphp/ext-fiber。 按照计划,投票将于3月22日截止,最新数据为 38 票赞同、11 票反对。从目前的结果来看,…

2021年12月11日 0条评论 1183点热度 0人点赞 魔芋红茶 阅读全文
PHP

[转载]关于 PHP 8.1 的 Fiber RFC

文章转载自https://zhuanlan.zhihu.com/p/356942841 最新的 PHP 8.1 增加了一个 Fiber 的提案,最近讨论的比较多。有不少好事者拿来说事儿,说是 “Fiber 进入内核之后,Swoole 的使用者就大幅减少“ 实际上 Fiber 扩展进入内核后,由于它是一个非常底层的 API ,并不是直接可以使用的技术,不会对 Swoole 产生影响。真正和 Swoole 竞争的是应该是 Amphp 、ReactPHP 。Fiber 反而对 Swoole 是有好处的,PHP 内核开发者…

2021年12月11日 0条评论 1361点热度 1人点赞 魔芋红茶 阅读全文
PHP

PHP学习笔记17:迭代器和生成器

图源:php.net 迭代器相关概念广泛存在于各种编程语言和设计模式中,这里推荐两篇我的相关文章: Python学习笔记31:迭代技术 设计模式 with Python 9:迭代器模式 迭代器 php中,可以通过实现Iterator接口的方式实现一个迭代器: <?php class MyClass implements Iterator {    public function current(): mixed   {   }    public function next(): void   {   }  …

2021年12月10日 0条评论 1262点热度 0人点赞 魔芋红茶 阅读全文
PHP

PHP学习笔记16:错误处理

图源:php.net 在之前的笔记PHP学习笔记6:表达式和运算符中介绍位运算时,提过error_reporting函数。事实上在使用php开发项目时,常需要使用相关的错误处理函数来设置环境,以让不同的环境对错误能进行不同的处理。 一般来说,基本原则是在开发环境严格检查错误,并将错误直接输出,这样有利于快速排查错误。而生产和预生产环境需要将错误输出从标准输出屏蔽,因为输出的错误信息可能包含一些敏感信息,这些信息被用户获知可能会影响到系统安全。此外一些不影响系统正常运行的错误信息,比如E_NOTICE和E_DEPCA…

2021年12月10日 0条评论 1199点热度 0人点赞 魔芋红茶 阅读全文
PHP

PHP学习笔记15:枚举

图源:php.net 从php 8.0.0开始,php支持枚举类型。简单地说,枚举代表一类有限的数据集,这在计算机领域非常常见,比如说用户类型(管理员,普通用户,VIP等),再比如订单类型(团队订单,个人订单等)。 在以前php不支持枚举的时候,我通常会使用类常量: <?php class UserType {    const ADMINI = 0; //管理员    const NORMAL = 1; //普通用户    const VIP = 2; //vip } function create_use…

2021年12月10日 0条评论 1237点热度 1人点赞 魔芋红茶 阅读全文
PHP

PHP学习笔记14:命名空间

图源:php.net 在php没有引入命名空间之前,构建比较大的应用时可能会遇到命名冲突的问题,比如: <?php // a.php class MyClass{     } <?php // b.php require_once './a/a.php'; class MyClass{    // PHP Fatal error: Cannot declare class MyClass, because the name is already in use in ...   } 如果是多人协同开发的大…

2021年12月9日 0条评论 1446点热度 0人点赞 魔芋红茶 阅读全文
PHP

PHP学习笔记13:类和对象 V

图源:php.net Final关键字 final关键字作用于类,可以让类不能被继承。作用于方法和常量,可以让方法和常量不能被重写。属性不能被声明为final。 final的常见用途是在模版方法模式中,将基类的骨架方法声明为final: abstract class Control {    protected bool $need_login = true;    protected array $header = [];    final public function handle_request()   {…

2021年12月9日 0条评论 1575点热度 1人点赞 魔芋红茶 阅读全文
123

魔芋红茶

加一点PHP,加一点Go,加一点Python......

专栏
  • SpringMVC 学习笔记 SpringMVC 学习笔记
  • MySQL学习笔记 MySQL学习笔记
  • Spring Boot学习笔记 Spring Boot学习笔记
  • Java编程笔记 Java编程笔记
  • php学习笔记 php学习笔记
  • Go语言编程笔记 Go语言编程笔记
  • 设计模式 with Python 设计模式 with Python
  • Linux之旅 Linux之旅
  • 腾讯云博客搭建 腾讯云博客搭建
  • HTTP学习笔记 HTTP学习笔记
项目
  • M3U-Helper M3U-Helper
  • Markdown-img Markdown-img
  • PEP中文翻译项目 PEP中文翻译项目
工具箱
  • 我的Windows软件列表 我的Windows软件列表
点歌台
最新 热点 随机
最新 热点 随机
Redis 学习笔记 6:消息队列 Redis 学习笔记 5:分布式锁 Redis 学习笔记 4:优惠券秒杀 Redis 学习笔记 3:黑马点评 Redis 学习笔记 2:Java 客户端 Redis 学习笔记 1:基础
Redis 学习笔记 4:优惠券秒杀Redis 学习笔记 5:分布式锁Redis 学习笔记 6:消息队列
MySQL 学习笔记 1:存储过程 Python学习笔记番外:模块开发中的debug 现在的开发者都这么浮躁了吗? 扎导版正义联盟观影吐槽 从零开始 Spring Boot 64:Hibernate 标识符 从零开始 Spring Boot 12:接收请求
最近评论
fuckbaidu 发布于 3 年前(02月26日) 兄弟,你新网址一直没备案成功
啊长 发布于 3 年前(12月17日) 膜拜大佬了,希望越做越好 :exclaim:
nfmd 发布于 4 年前(11月01日) 腾讯云出了个60块六年多的bug
nfmd 发布于 4 年前(10月30日) str.replace("逻辑", "罗辑")
fuckbaidu 发布于 4 年前(10月14日) 并不是所有的文件都能通过软链接转移,比如chrome浏览器,你要是转移了,就不能自动更新了
友情链接
  • NFMD's blog
  • 小金龙的blog
  • 幸哥的blog

COPYRIGHT © 2021 icexmoon.cn. ALL RIGHTS RESERVED.
本网站由提供CDN加速/云存储服务

Theme Kratos Made By Seaton Jiang

宁ICP备2021001508号

宁公网安备64040202000141号