Hotodogo: Night-City
#Hello Edgerunners, welcome to the Night-City.

Welcome!

iOS 入门 002: 内存空间地址

内存空间地址 基本概念 程序员直接接触的内存地址为 虚拟内存地址,而非物理内存地址 以32位系统为例,每个进程都对应4GB虚拟内存地址空间,其中0-3GB为 用户层 ,3-4GB为 内核层 程序员可以直接操用户层,用户层无法直接操作内核层 虚拟内存地址本身不对应任何物理内存或硬盘文件,因此不能存储数据,必须映射到物理内存或硬盘文件,也即分配内存 内存管理的单位是字节,内存映射的基本单位是内存页,一次映射必须是内存页的整数倍 getpagesize()可以获取当前系统内存页一页的大小,通常为4096字节 如果不映射而直接使用虚拟内存地址,会引发段错误 对内存进行没...

iOS 入门 001: C语言位运算

位运算符可以直接对二进制数位进行操作 & (按位与) 两个对应位都为1则得1,有0则得0按位与可以把某个二进制数位置0任何数位和0按位与结果为0,和1按位与结果不变 3 & 5: 3 0000 0011 5 0000 0101 0000 0001 | (按位或) 两个对应位都为0则得0,有1则得1按位或可以把某个二进制数位置1任何数位和0按位或结果不变,和1按位或结果为1 3 | 5: 3 0000 0011 5 0000 0101 0000 0111 \^(按位异或) 两个对应位相同则得0,不同则得1按位异或可以把某个...

PHP Primer 023 : 图像处理(一)

这一篇主要介绍 PHP 中的 Grahpic Device 库的使用。 CD 已经在 PHP 中集成,我们要做的很简单: <?php header("content-type: image/png"); 新建画布 接下来,要画图首先当然要有画布: $img = imagecreatetruecolor(100, 100); 颜色设定 为画笔设定颜色吧: $red = imagecolorallocate($img, 0xFF, 0x00, 0x00); $black = imagecolorallocate($img, 0x00, 0x00, 0x00); ...

PHP Primer 024 : 图像处理(二)

上一篇学会了线条的绘制,这一篇来了解一下如何绘制文字。 画布与颜色 依然要创建画布和颜色: <?php $img=imagecreatetruecolor(100, 100); $red = imagecolorallocate($img, 0xFF, 0x00, 0x00); 绘制文字 imagestring($img, 5, 0, 0, "Hello, world", $red); 输出图片释放内存 header("content-type: image/png"); imagepng($img); imagedestroy($img)...

PHP Primer 025 : 图像处理(三)

通过前面的学习,已经可以成功在浏览器上输出图像,那么问题来了,如何保输出为文件呢? <?php $img = imagecreatetruecolor(100, 100); $red = imagecolorallocate($img, 0xFF, 0x00, 0x00); imagestring($img, 5, 0, 0, "Hello, world", $red); header("content-type: image/png"); $filenamePNG = "myImg.png"; // 输出 PNG 文件,额外设...

PHP Primer 026 : 图像处理(四)

这一篇,介绍一下添加水印的方法。 添加水印通常分为两种: 添加文字 添加其他图片 画布 仍旧需要持有画布,但是由于图片已经存在,我们需要使用这个图片来作为画布: <?php $filename = 'myImg.jpg'; $img = imagecreatefromjpeg($filename); 添加文字 添加文字的情况与前面介绍的方法相同: $red = imagecolorallocate($img, 0xFF, 0x00, 0x00); imagestring($img, 5, 0, 0, "Hello, world", $red); 添...

PHP Primer 027 : 图像处理(五)

除了前面介绍的内容,简单的验证码图片也是很常见的。 通常为了提高安全性,验证码图片中除了数字与字母外还有一些干扰信息,例如横线、噪点等。线条绘制在前面已经说过,这一篇我们来介绍一种简单的噪点生成方法。 for ($i = 0;$i < 50;$i++) { imagesetpixel($img, rand(0, 100) , rand(0, 100) , $red); imagesetpixel($img, rand(0, 100) , rand(0, 100) , $blue); } ...

PHP Primer 028 : 数据库操作

数据库操作几乎是开发中无法避免的一环,PHP 对数据库的支持很十分全面,主流数据库例如 MsSQL、MySQL、Sybase、Db2、Oracle、PostgreSQL,Access 等。 由于 MySQL 与 PHP 同属 LAMP 范畴,因此 PHP 中 MySQL 的使用可谓十分广泛。 连接数据库 mysql 版: <?php $link = mysql_connect('mysql_host', 'mysql_user', 'mysql_password'); mysqli 版: <?php $link = mysqli_connect('mysql_host', 'm...

PHP Primer 021 : 面向对象

有了前面的基础知识,就可以开始学习 PHP 中的面向对象了。 类的定义 简单来说定义一个类的方式是这样的: <?php class Person { public $name = 'Meniny'; public function getName() { return $this->name; } } ?> 类的实例化 那么创建这个类的实例则是这样的: <?php $person = new Person(); ?> 或者兜个圈子: $clsName = 'Person'; $person = new $clsNa...

PHP Primer 022 : 异常

这一篇主要介绍 PHP 5 开始支持的异常处理。 Exception 类 在 PHP 中有许多异常处理类,而这里要介绍的是它们的基类 Exception,它包含了一些基本的属性与方法。 其中,常用的属性有: message: 异常信息 code: 异常代码 file: 异常所在文件名 line: 异常所在行数 常用的方法有: getTrace: 获取异常追踪 getTraceAsString: 获取异常追踪(字符串) getMessage: 获取异常信息 try catch 要捕获异常,还需要了解 try catch 的用法: <?php try{ ...

PHP Primer 018 : 文件引入

在 PHP 中,提供了一些包含语句,用来请求调用外部文件。 void include(string filename) : 引入外部文件,其中参数 filename 表示的完整的路径。只有代码执行到此语句时文件才会被引入。找不到文件时会抛出警告但不会终止程序。 void require(string filename) 请求外部文件,其中参数 filename 表示的完整的路径。只要程序执行就会引入文件。找不到文件时会抛出警告并终止程序。 void require_once(string filename) 请求外部文件,其中参数 filename 表示的完整的路径。这个函数是 r...

PHP Primer 019 : 函数基础

前面的博文中多次提到和用到函数,现在我们就来了解一下 PHP 中的函数。 定义函数 在 PHP 中,函数使用 function 关键字来定义,通常还有函数名、参数列表、函数体组成。函数返回值不需要声明,如果没有返回值则省略 return 语句即可。 定义函数的基本格式为: <?php function 函数名(参数1, 参数2, 参数3...) { 函数体 } ?> 举个栗子: <?php function foo($str, $pri) { echo str; return "ret&qu...

What's this?

The Night-City version of Hotodogo inspired by Cyberpunk 2077. Not finished yet.

Pinned Message

The Founder and CEO of Infeca Technology.

Developer, Designer, Blogger.

Big fan of Apple, Love of colour.

Feel free to contact me.

反曲点科技创始人和首席执行官。

开发、设计与写作皆为所长。

热爱苹果、钟情色彩。

随时恭候 垂询