文章分类 -  PHP

上一页 1 2 3 4 5 6 7 8 9 10 ··· 38 下一页
摘要:php能把函数名作为参数传递吗? 0 投票 0 投票 0 投票 352 浏览 请问php能把函数名作为参数传递吗?类似javascript,lua里面一样,函数名本来就是个变量,可以随时传递。比如js可以这样写: function test(msg){ console.log(msg); } fun 阅读全文
posted @ 2018-06-18 10:47 天涯海角路 阅读(4077) 评论(0) 推荐(0)
摘要:可以。方法主要介绍2种:1.使用函数call_user_func()或者 call_user_func_array()<?phpfunction foobar($arg, $arg2) { echo __FUNCTION__, " got $arg and $arg2\n";}class foo { 阅读全文
posted @ 2018-06-18 10:34 天涯海角路 阅读(1282) 评论(0) 推荐(0)
摘要:如果一个变量名后面有括号,PHP将寻找与该变量值同名的函数,并且尝试执行它。PHP"可变函数"可以用来实现包括回调函数、函数表在内的一些用途。 ”可变函数“不能用于语言结构,如echo(),print(),unset(),isset(),empty(),include(),require()等,需要 阅读全文
posted @ 2018-06-18 10:32 天涯海角路 阅读(127) 评论(0) 推荐(0)
摘要:PHP 支持可变函数的概念。这意味着如果一个变量名后有圆括号,PHP 将寻找与变量的值同名的函数,并且尝试执行它。可变函数可以用来实现包括回调函数,函数表在内的一些用途。 可变函数不能用于例如 echo,print,unset(),isset(),empty(),include,require 以及 阅读全文
posted @ 2018-06-18 10:31 天涯海角路 阅读(162) 评论(0) 推荐(0)
摘要:所谓可变变量,就是一个变量的变量名可以动态的设置和使用。语法形式是PHP的特殊语法,其他语言中少见 有时候使用可变变量名是很方便的。就是说,一个变量的变量名可以动态的设置和使用。一个普通的变量通过声明来设置,例如: ? 1 2 3 <?php $a = 'hello'; ?> ? 1 2 3 <?p 阅读全文
posted @ 2018-06-18 10:30 天涯海角路 阅读(149) 评论(0) 推荐(0)
摘要:有时候使用可变变量名是很方便的。就是说,一个变量的变量名可以动态的设置和使用。一个普通的变量通过声明来设置,例如: <?php$a = 'hello';?> <?php$a = 'hello';?> <?php$a = 'hello';?> 一个可变变量获取了一个普通变量的值作为这个可变变量的变量名 阅读全文
posted @ 2018-06-18 10:29 天涯海角路 阅读(210) 评论(0) 推荐(0)
摘要:在阅读yii2源码的时候接触到了trait,就学习了一下,写下博客记录一下。 自 PHP 5.4.0 起,PHP 实现了代码复用的一个方法,称为 traits。 Traits 是一种为类似 PHP 的单继承语言而准备的代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次 阅读全文
posted @ 2017-08-16 22:51 天涯海角路 阅读(199) 评论(0) 推荐(0)
摘要:前两篇我们已经介绍了python 协程的使用和yield from 的原理,这一篇,我们用一个例子来揭示如何使用协程在单线程中管理并发活动。 1 什么是离散事件仿真 Wiki上的定义是: 离散事件仿真将系统随时间的变化抽象成一系列的离散时间点上的事件,通过按照事件时间顺序处理事件来演进,是一种事件驱 阅读全文
posted @ 2017-07-25 22:57 天涯海角路 阅读(128) 评论(0) 推荐(0)
摘要:上一篇python协程1:yield的使用介绍了: 生成器作为协程使用时的行为和状态 使用装饰器预激协程 调用方如何使用生成器对象的 .throw(…) 和 .close() 方法控制协程 这一篇将介绍: 协程终止时如何返回值 yield新句法的用途和语义 1 让协程返回值 先看一个例子: 这段代码 阅读全文
posted @ 2017-07-25 22:56 天涯海角路 阅读(184) 评论(0) 推荐(0)
摘要:最近找到一本python好书《流畅的python》,是到现在为止看到的对python高级特性讲述最详细的一本。 看了协程一章,做个读书笔记,加深印象。 1 协程定义 协程的底层架构是在pep342 中定义,并在python2.5 实现的。 python2.5 中,yield关键字可以在表达式中使用, 阅读全文
posted @ 2017-07-25 22:53 天涯海角路 阅读(262) 评论(0) 推荐(0)
摘要:最近找到一本python好书《流畅的python》,是到现在为止看到的对python高级特性讲述最详细的一本。看了协程一章,做个读书笔记,加深印象。 协程定义 协程的底层架构是在pep342 中定义,并在python2.5 实现的。 python2.5 中,yield关键字可以在表达式中使用,而且生 阅读全文
posted @ 2017-07-25 21:58 天涯海角路 阅读(238) 评论(0) 推荐(0)
摘要:生成器表达式 生成器表达式的标准方式是以圆括号的形式,括号内可以是一个列表推导式。 generator_expression ::= "(" expression comp_for ")" 生成器表达式生语法和列表推导式相同,列表推导式是以大括号的形式存在。列表推导式是直接创建一个列表,但是由于受到 阅读全文
posted @ 2017-07-25 21:54 天涯海角路 阅读(96) 评论(0) 推荐(0)
摘要:官方解释: Python3.3版本的PEP 380中添加了yield from语法,允许一个generator生成器将其部分操作委派给另一个生成器。其产生的主要动力在于使生成器能够很容易分为多个拥有send和throw方法的子生成器,像一个大函数可以分为多个子函数一样简单。Python的生成器是协程 阅读全文
posted @ 2017-07-25 21:53 天涯海角路 阅读(140) 评论(0) 推荐(0)
摘要:最近在StackOverflow上看的问题回答比较多,今天这篇是关于介绍Python生成器的相关思想以及其中关键字yield用法的翻译内容。 为了搞清楚yield是用来做什么的,你首先得知道Python中生成器的相关概念,而为了了解生成器的相关概念,你需要知道什么是迭代器。 本篇中的Python除了 阅读全文
posted @ 2017-07-25 21:51 天涯海角路 阅读(630) 评论(0) 推荐(0)
摘要:上一篇中谈到了迭代器、生成器以及yield的相关内容,而Python 3.3中,引入了在PEP 380 – Syntax for Delegating to a Subgenerator中提出的yield from关键字,大幅简化了Python程序员在使用协程的时候的编程过程。 本文内容除特殊说明外 阅读全文
posted @ 2017-07-25 21:50 天涯海角路 阅读(451) 评论(0) 推荐(0)
摘要:yield个人认为其实是为了实现协程而出现的。所以如果要解释清楚什么是yield,那么也就必须要先搞懂什么是协程。首先明确一点:协程是针对单个CPU的,也就是说,讲协程讲的就是单线程。我们可以通过协程实现类似并发的任务,并且如果只是在一个CPU上的话,使用协程带来的效率一般都会比使用线程来的高。这是 阅读全文
posted @ 2017-07-25 20:54 天涯海角路 阅读(1036) 评论(0) 推荐(0)
摘要:#例1. 简单输出斐波那契數列前 N 个数#缺点:该函数可复用性较差,因为 fab 函数返回 None,其他函数无法获得该函数生成的数列#要提高 fab 函数的可复用性,最好不要直接打印出数列,而是返回一个 List。def fab1(max): n, a, b = 0, 0, 1 while n 阅读全文
posted @ 2017-07-25 20:52 天涯海角路 阅读(217) 评论(0) 推荐(0)
摘要:Reading data from a generator using yield from Instead of manually iterating over reader(), we can just yield from it. That works, and we eliminated o 阅读全文
posted @ 2017-07-25 20:39 天涯海角路 阅读(134) 评论(0) 推荐(0)
摘要:本文介绍了Python对于线程的支持,包括“学会”多线程编程需要掌握的基础以及Python两个线程标准库的完整介绍及使用示例。 注意:本文基于Python2.4完成,;如果看到不明白的词汇请记得百度谷歌或维基,whatever。 尊重作者的劳动,转载请注明作者及原文地址 >.< 1. 线程基础 1. 阅读全文
posted @ 2017-07-25 19:42 天涯海角路 阅读(97) 评论(0) 推荐(0)
摘要:临界资源即那些一次只能被一个线程访问的资源,典型例子就是打印机,它一次只能被一个程序用来执行打印功能,因为不能多个线程同时操作,而访问这部分资源的代码通常称之为临界区。 1. 锁机制 threading的Lock类,用该类的acquire函数进行加锁,用realease函数进行解锁 当一个线程调用锁 阅读全文
posted @ 2017-07-25 19:35 天涯海角路 阅读(426) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 9 10 ··· 38 下一页