Peter 发布于 08月20, 2017

Swift系列一 | 初识Swift-闭包和函数

在Swift里面使用func来声明一个函数(Golang也是使用这个关键词声明一个函数),使用名字和参数来调用函数。使用->来指定函数的返回值。func greet(person: String, day: String) -> String{ return "Hello \(person), today is \(day)"}greet(person: "Peter", day: "Sunday")默认情况下,函数使用它们的参数名称作为它们的参数的标签,在参数名称前可以自定义参数标签,或者使用_表示不使用标签func greet(_ person: String, on day: String) -> String { return "Hello \(person), today is \(day)"}greet("John", on: "Wedmesday...

阅读全文 »

Peter 发布于 08月19, 2017

Swift系列一 | 初识Swift-控制流

控制流使用 if 和switch 来进行条件操作,使用for-in、for、while和repeat-while来进行循环,包裹条件和循环变量括号可以省略,但是语句体大括号是必须的if语句let indivdualScores = [75, 43, 103, 87, 12]var teamScore = 0for score in indivdualScores { if score > 50 { teamScore += 3 } else { teamScore += 1 }}print(teamScore)在if语句中,条件必须是一个布尔表达式,这意味着想if score {...}这样的代码将报错,而不会隐形的与0做对比。 注意: 后面包裹条件和循环变量的小括号必须省略,否则编译器将报错可选值可以使用if和let来处理值缺失的情...

阅读全文 »

Peter 发布于 08月19, 2017

Swift系列一 | 初识Swift-简单值

简单值变量&常量let 声明常量, var 声明变量变量或常量声明并赋值不需要制定类型,编译器会自动推断类型声明变量或常量如果没有初始值则需要在后面类型声明,用冒号分割 let explicitDouble: Double = 70值永远不会隐式转换为其他类型,如果需要把一个值转换成其他类型,必须显示转换 let label = "The width is" let let width = 94let withLebal = label + String(width)把值转换成字符串: 把值写到括号中,并在括号之前写一个反斜杠let apples = 3let oranges = 5let appleSummary = "I have \(apples) apples."let fruitSummary = "I hav \(apples + oranges) pieces of ...

阅读全文 »

Peter 发布于 06月29, 2017

PHP Instanceof研究

描述 最近为了让新开发的项目更稳定,在数据类型上面做了很严格的控制,其中就用的了instanceof这个关键词。这货就是用来判断某个对象的示例是否是属于某个类或者某个类的子类,或者是否是某个接口的实现。 他的语法糖应该是这个样子的,输出的结果是bool类型 $obj instanceof $class 这样写可能不太好理解,下面给一个示例 class Parents{ public function __construct(){ } } $parent = new Parent(); if ( $parent instanceof Parents ) { echo 'parent变量是属于Parents这个类的'; } 有两点值得注意。首先,类名没有任何定界符(引号)。使用定界符将导致语法错误。其次,如果比较失败,脚本将退出执行。 应用场景 inst...

阅读全文 »

Peter 发布于 06月27, 2017

PHP内置Web Server研究

记得刚开始接触node.js的时候写的第一段代码就是起一个nodejs的服务。很清楚的记得当初写的就是下面这货 var http = require('http'); http.createServer(function (request, response) { // 内容类型: text/plain response.writeHead(200, {'Content-Type': 'text/plain'}); response.end('Hello World\n'); }).listen(8888); // 终端打印如下信息 console.log('Server running at http://127.0.0.1:8080/'); 然后把上面代码保存到一个叫server.js 的文件里面,使用命令node server.js就能够启用一个8080...

阅读全文 »