个人比价认可,现在是用 netbean 6.8 官方提供插件很齐全。
http://www.ibm.com/developerworks/cn/opensource/os-php-ide/
http://www.pusuo.net/2009-09-19/110884581.html
再有比较关注vs 2010的正式版,想要和vs.net,原来是安装在vs2008 以上版本的,现在不知道是不是可以整合到vs 2010
如果可以整合的话,那么我的春天就来了~! 听说vs2010 RC 发布不久 正式版就发布出来了。
先下载下来常常鲜。
http://www.pccppc.com/show.php?tid=693
......
今天碰到个奇怪的问题,一个ajax页面在本地测试服务器运行一切正常,传到公网服务器上就死活说 javascript错误。
打开代码一看,是javascript的那一行使用了一个json的reponseText,DEBUG一下,原来回传是空的。
看看后台PHP,貌似没什么问题(本来以为是URL问题)然后上网搜一下,原来是PHP的json_encode函数在5.2下才有,在服务器phpinfo一下,果然,是CENTOS5标配的5.14
yum update php
再看,奇怪了,还是5.14,没变啊。
原来centos的yum源默认没有php5.2的更新包,添加了一个新的PHP更新包软件源后,
yum update php
service httpd restart
再phpinfo一下,一切正常了~ ......
因为最近做一个DIY的设计器,需要让用户选择某个字体,并且支持旋转,拖拉等操作。直接使用文本框是不行的,因为flex不支持字体的直接旋转,大家可以尝试一下,如果选择了text控件,文字就看不到了,有个办法是把文字embed嵌入到swf中去,这样就支持了。
但是英文还好,字体文件不大,中文的话动辄几个M,这个做法很不现实,于是想到另外一个解决方案,用服务器字体。
做了个php demo,接收文字,并根据指定的字体文件去生成图片:
<?php
$str = $_GET['str'];
$fontpath= $_GET['fontpath'];
if($str==null||$str==''){
return;
}else{
$str = iconv("GB2312", "UTF-8", $str);//为了支持中文
}
$Size = 72;
if($fontpath==null||$fontpath==''){//字体的路径
$fontpath='fzse_gbk.ttf';//可使用ttf字体
}
//动态计算文字占用图片大小
$txts = imagettfbbox($Size,0,$fontpath,$str);
$YX1 = abs($txts[5])*0.23;
$YX2 = abs($txts[2])*0.02;
$IX = abs($txts[2])+$YX2;
$IY = abs($txts[5])+$YX1;
$im = imagecreate($IX,$IY);
$white = imagecolorallocate($im,0xFF,0xFF,0xFF);
imagecolortransparent($im,$white);
......
因为最近做一个DIY的设计器,需要让用户选择某个字体,并且支持旋转,拖拉等操作。直接使用文本框是不行的,因为flex不支持字体的直接旋转,大家可以尝试一下,如果选择了text控件,文字就看不到了,有个办法是把文字embed嵌入到swf中去,这样就支持了。
但是英文还好,字体文件不大,中文的话动辄几个M,这个做法很不现实,于是想到另外一个解决方案,用服务器字体。
做了个php demo,接收文字,并根据指定的字体文件去生成图片:
<?php
$str = $_GET['str'];
$fontpath= $_GET['fontpath'];
if($str==null||$str==''){
return;
}else{
$str = iconv("GB2312", "UTF-8", $str);//为了支持中文
}
$Size = 72;
if($fontpath==null||$fontpath==''){//字体的路径
$fontpath='fzse_gbk.ttf';//可使用ttf字体
}
//动态计算文字占用图片大小
$txts = imagettfbbox($Size,0,$fontpath,$str);
$YX1 = abs($txts[5])*0.23;
$YX2 = abs($txts[2])*0.02;
$IX = abs($txts[2])+$YX2;
$IY = abs($txts[5])+$YX1;
$im = imagecreate($IX,$IY);
$white = imagecolorallocate($im,0xFF,0xFF,0xFF);
imagecolortransparent($im,$white);
......
最近一年来一直在使用fedora,发现linux真是太适合我了,喜欢写程序,自己瞎倒腾,唉windows误我大好年华……
用PHP写了一段程序用于提取网页中的数据,相信搜索引擎也是差不多的想法,只不过他们数据多,算法好些,呵呵
[php]
<?php
/*
*此文件的目标是自动搜集存储8684上的深圳市公交数据
*
*由于http获得的网页为gbk编码PHP需要转换,只能将PHP重新编译
*/
//载入simple_html_dom类分析HTML文件
include 'simple_html_dom.php';
//创建一个SQLite数据库用于存储数据
$db = new SQLite3 ('BusData.db');
if ($db) //数据库创建成功
{
//创建站点名表
$db->exec('CREATE TABLE stationName (id INTEGER PRIMARY KEY AUTOINCREMENT,sName STRING)');
//创建线路表sName,sNote,sTo,sfrom分别存储线路名,备注,去程,回程
$db->exec('CREATE TABLE Line (sName STRING, sNote STRING, sTo STRING, sfrom STRING)');
}
analysis($db, 'http://shenzhen.8684.cn/x_24f5dad9');
$db->close ();
echo "Congratulations! Write Sucessfully!";
//******************
//分析数据,插入数据部分
//***** ......
PHP是一个很优秀的工具,它可以简单,也可以复杂。不一样的项目,应该用不一样的PHP。
小项目 - 简单而直接的PHP
一般对于一个功能页面在20以下的网站,我们可以用一个很简单的框架结构来写。在这个规模上,我建议是使用比较直接的面向过程编码方法,原因很简单,没有必要把class文件弄的N 多,结果controller里边就一个new就完了。当然,需求频繁变化的项目除外。
在这个级别上,php优点表现的很明显:快速开发,一目了然。缺点同时也被隐藏得很好。
中型项目 - 结构优美的OO化的PHP
对于一个中型项目,我建议使用一个良好设计的框架来做,这个框架可以是基于MVC模型,封装了众多底层操作的,当然,一定要有一个好的最好是透明的cache机制,这样,我们为了适应变化而加入的OO机制可以运行得更快更好。
在这个级别上。php的缺点开始凸现,像对OO支持的不完整(这个PHP5有很大改进),只能单线程模式。另外一些外围工具开始出现缺乏支持,像PHP没有好的重构工具,没有好的集成到IDE中的单元测试工具。优点当然还是原来的快速开发,广泛的可用的开源资源。
大型项目 - 扩展、优化后的PHP
这里的 ......
<?php
header("content-type:image/png");
$img=ImageCreate(100,35);
$bgcolor=ImageColorAllocate($img,0,0,0);
$red=ImageColorAllocate($img,255,0,0);
$bgcolortrans=ImageColorTransparent($img,$bgcolor);
ImageString($img,5,10,10,"PNG PHP",$red);
ImagePng($img);
ImageDestroy($img);
?>
ImageCreate()函数可创建图像。被创建的图像有两个参数:图像的宽度、图像的高度。ImageCreate(100,80)一句将创建一个宽100个象素、高80个象素的图像,图像格式可为PNG、JPEG和GIF。
用ImageCreate()函数创建图像实际上是将TrueType字体文字(TEXT)变成图形格式,所以,我们要往图像变量写入文字,所用函数为ImageString,该函数的用法举例如下:
ImageString(,3,10,10,,);
解释:
- 图像对象;
数值 - 分别为:3,文字部分的大小,取HTML标准的字体大小。两个10分别为文字的在图像中的X和Y值;
- 将变为图像内容的字符串;
- 预设的颜色变量。
我们知道,只有PNG和GIF可为背景透明的,故而我们将在header中指定图片格式,语句如下:header("content- type:image/png(或gif)")。而要令图像背景透明,我们 ......