Nightrain——像开发PHP网站一样开发桌面程序

让PHP能够开发桌面程序一直是某些PHPer的梦想, 如今, 这个梦想可以通过Nightrain实现, 虽然过程或多或少还是有那么一点(?)蛋疼和蹩脚, 但至少, 现在我们可以做到了. Nightrain是通过Python语言及其模块wxPython实现的, 而wxPython背后则是wxWidgets这一成熟的C++ GUI类库, 感谢他们为PHP创造了这个机会. 不过, 通过Nightrain开发出的, 不是像那个曾经存在过但又几乎不留痕迹的PHP-GTK一样使用系统原生界面的桌面程序, 而是基于WebApp的桌面程序, 这一点与我们同样蛋疼的Node-Webkit有些相像. 也因为是We »

BlackGlory on PHP

AjaXplorer 5 - PHP文件管理程序之王

博主是从AjaXplorer 4开始用AjaXplorer的, 在同类文件管理程序中, AjaXplorer的界面最美观, 功能最强大, 暂时还没能找到综合水平比它更高的PHP程序. AjaXplorer的缺点也是很明显的, 它对环境的要求较高, 很吃内存, 且其核心代码之间的依赖性很强, 如果你空间的APC、XCache等PHP加速器缓存较小, 容易崩溃. AjaXplorer 5对界面进行了扁平化, 外观更加时尚, 简化了部分操作流程, 降低了上手的难度. 代码也进行了重构, 使用时会发现与AjaXplorer 4在URL结构等方面有所不同. 功能方面, AjaXplorer主打的还是文件 »

BlackGlory on PHP

虾米getLocation的PHP和JavaScript实现

getLocation这个函数可以说是整个XiamiThief的核心, 之前在Flash中反编译出的AS代码太难看了, 所以专门重写了能看的版本. PHP function getLocation($str){ try{ $a1=(int)$str{0}; $a2=substr($str, 1); $a3=floor(strlen($a2) / $a1); $a4=strlen($a2) % $a1; $a5=array »

BlackGlory on js, PHP

PHP 测试程序运行时间

以PHP 随机数打点测试这篇文章的内容为例,测试其打点所耗时间. 代码如下: <?php //开始时间 $stime=microtime(true); $width=500; $height=500; $image=imagecreatetruecolor($width, $height); $black=imagecolorallocate($image, 0, 0, 0); $background=imagecolorallocate($image, 255, 255, 255); imagefilledrectangle($image, 0, 0, $width, $height »

BlackGlory on PHP

PHP 随机数打点测试

应某人的要求,用javascript 随机数打点测试的思路写了一个PHP的随机数打点版本. GD需要2.0.1以上版本,PHP则需要4.2.0以上版本才能正确运行. <?php $width=500; $height=500; $image=imagecreatetruecolor($width, $height); $black=imagecolorallocate($image, 0, 0, 0); $background=imagecolorallocate($image, 255, 255, 255); imagefilledrectangle($image, 0, 0, $wi »

BlackGlory on PHP

TP手册没写明白的:RelationModel的relation方法关联多个数据

在TP中实现关联模型很方便,直接将模型从RelationModel继承再设置$_link属性就可以. 手册中写明的关联查询方法有以下两种. 关联单个数据: $objModel->relation('name')->select(); 关联全部数据: $objModel->relation(true)->select(); 问题来了,我想关联2个数据(或者低于总量的更多数据)怎么办? 起先我尝试重复调用relation方法,发现只有最后一次调用relation可以生效. 无奈翻了下RelationModel的源文件,发现关联多个数据应该使用以下形式: $objMode »

BlackGlory on PHP

PHP简单图片水印

简单水印效果,注释掉的部分是调整透明度的,但是效果不太好… <?php //function watermark($imageType,$imageFile,$logoFile,$alpha=0.5){ function watermark($imageType,$imageFile,$logoFile){ switch($imageType){ case 'png':$image=imagecreatefrompng($imageFile);break; case 'jpg':$image=imagecreatefromjpeg($imageFi »

BlackGlory on PHP

源码:利用Canvas将图片转换为DataURL

DataURL是什么?其实就是一个Url,这个Url存储了Data,比如将一张图片变成url. 本站旧logo(DataURL): data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARkAAAA2CAYAAADzne1AAAAgAElEQVR4Xu2dB5hUxdKGZ1miZEUQrkjwYkJMIKBeBDEhCnL1ikpQvCpBzKiIophzzmBERUXMCURFUBRQEJAgiuQgSVGCkhb+7z127e09nNmZWZhl9Z9+nvPMzDmnu6u7q76urqruyYplUqYHMj2Q6YE09kBWGsvOFJ3 »


PHP 制作动态签名图

需要PHP有GD扩展. 代码如下: <?php //Author:BlackGlory //Date:2011.8.14 // -------------------------------------------------- // 分析返回当前时间 // -------------------------------------------------- function getTime(){ return date('Y-m-d H:i:s'); } // -------------------------------------------------- // 分析返 »

BlackGlory on PHP

简单的PHP图片上传工具

写这个东西的主要目的是放在SAE上做外链图片网站,因为要求不高,所以写了一个非常简单的程序. 后来发现SAE不给操作权限,只能作罢.(又得去研究SAE的存储服务) 在一般的空间上都可以使用,没有使用数据库 下载地址:http://u.115.com/file/dnct4cyf 1.使用前将文件解压后上传至你的空间 2.运行install.php 3.在index.php中使用Admin作为用户名和密码登录 4.支持图片文件 上传,删除,查看 5.所有图片一律保存在images目录中 源代码: install.php <?php if(! is_dir('images')){ »