显示下一条  |  关闭

Ethan's notes

PPshoiw_IT 高效,安全,简洁

 
 
 
 
 
 

PHP程序员突破成长瓶颈

2011-1-25 11:29:39 阅读65 评论0 252011/01 Jan25

身边有几个做PHP开发的朋友,因为面试,也接触到不少的PHP工程师,他们常疑虑自己将来在技术上的成长与发展,我常给他们一些建议,希望他们能破突自己,有更好的发展。

PHP工程师面临成长瓶颈

先明确我所指的PHP工程题,是指毕业工作后,主要以PHP进行WEB系统的开发,没有使用其的语言工作过。工作经验大概在3~4年,普通的WEB系统(百万级访问,千成级数据以内或业务逻辑不是特别复杂)开发起基本得心应手,没有什么问题。但他们会这样的物点:

除了PHP不使用其它的语言,可能会点shell 脚本。 对PHP的掌握不精(很多PHP手册都没有看完,库除外) 知识面比较窄(面对需求,除开使用PHP和mysql ,不知道其它的解决办法) PHP代码以过程为主,认为面向对象的实现太绕,看不懂

这些PHPer 在遇到需要高性能,处理高并发,大量数据的项目或业务逻辑比较复杂(系统需要解决多领域业务的问题)时,缺少思路。不能分析问题的本质,技术判断力比较差,对于问题较快能找出临时的解决办法,但常常在不断临时性的解决办法中,系统和自己一步步走向崩溃。那怎么提高自己呢?怎么可以挑战难度更高的系统?

更高的挑战在那里?

结合我自己的经验,我列出一些具体挑战,让大家先有个感性的认识。

高性能系统的挑战在那里?

如何选择WEB服务器?要不要使用fast-cgi 模式 要不要使用反向代理服务?选择全内存缓存还是硬盘缓存? 是否需要负载均衡?是基于应用层,还是网络层? 如

作者  | 2011-1-25 11:29:39 | 阅读(65) |评论(0) | 阅读全文>>

谈谈怎么样才算是个优秀的软件测试工程师

2011-1-6 12:31:56 阅读82 评论0 62011/01 Jan6

最近公司项目正处于发布前夕,作为一个开发者,整天都在修改着各种Bug, 看着成推的Bug 和 日益临近的发布日期,经常都是心有闷火,让人很不舒服,总是 认为是 测试人员在找麻烦,呵呵,相信 很多开发人员都有过这种尽力了。

在百度里输入怎么样才能成为一个优秀的测试工程师。待续.....

作者  | 2011-1-6 12:31:56 | 阅读(82) |评论(0) | 阅读全文>>

常用的表单验证及一些字符串转义函数--JS

2010-12-16 10:17:20 阅读315 评论1 162010/12 Dec16

// 是否为空,非空返回真,不非为空返回假

function isBlank(str) { var blankFlag = true;

    if (str.length == 0) return true;

    for (var i = 0; i < str.length; i++) {

        if ((str.charAt(i) != "") && (str.charAt(i) != " ")) {

            blankFlag = false;

            break;

        }

    }

    return blankFlag;

}

function checkNotNull(theField, fieldName) {

    if(isBlank(theField.value)){

        alert(fieldName + "不可为空!");

                if(theField.type!="hidden"){

          theField.focus();

    

作者  | 2010-12-16 10:17:20 | 阅读(315) |评论(1) | 阅读全文>>

JavaScript

2010-12-15 13:37:34 阅读96 评论0 152010/12 Dec15

/*   

******************************************   

                         字符串函数扩充                                    

******************************************   

*/

/*   

===========================================   

//去除左边的空格   

===========================================

*/   

String.prototype.LTrim = function()    

{    

         return this.replace(/(^s*)/g, "");    

}

/*   

===========================================   

//去除右边的空格   

===========================================   

*/   

作者  | 2010-12-15 13:37:34 | 阅读(96) |评论(0) | 阅读全文>>

JS 异常捕捉机制

2010-12-15 11:55:27 阅读235 评论0 152010/12 Dec15

<script type="text/javascript">

//异常捕捉机制

window.onerror = function(s,u,l)

{

 try

 {

  alert(u+"中\n\n"+l+"行\n\n发生了错误:"+s);//可替代ie弹出脚本错误提示,进行脚本错误定位;

  throw "error";

 }

 catch(e)

 {

  if (e == "error")

  {

   alert("网络原因,页面未加载完毕,请等待");

  }

 }

 //屏蔽ie弹出脚本错误提示

 event.cancelBubble = true;

 event.returnValue = true;

 return true;

}

</script>

作者  | 2010-12-15 11:55:27 | 阅读(235) |评论(0) | 阅读全文>>

PHP 通过PHPExcel 完成导入导出Excel操作

2010-12-8 9:42:09 阅读119 评论0 82010/12 Dec8

下载PHPExcel 类库(官方网站

导出使用方法:

set_include_path(get_include_path().PATH_SEPARATOR.'../phpExcel');   //phpExcel文件夹的文字

require_once('PHPExcel.php');

require_once('PHPExcel/Writer/Excel5.php'); //注意这个 PHPExcel 文件夹一定要是大写,程序里面用的着。

$objExcel=new PHPExcel();

 $objWriter=new PHPExcel_Writer_Excel5($objExcel);

 $objExcel->setActiveSheetIndex(0);

 $objActSheet=$objExcel->getActiveSheet();

 $objActSheet->setTitle('数据备份');

 $outputFileName="数据备份.xls";

 //数据

 //表头

 $objActSheet->setCellValue('A1',"托管编号");

作者  | 2010-12-8 9:42:09 | 阅读(119) |评论(0) | 阅读全文>>

js 显示时间方法

2010-12-6 14:28:34 阅读104 评论0 62010/12 Dec6

function Clock() {

 var date = new Date();

 this.year = date.getFullYear();

 this.month = date.getMonth() + 1;

 this.date = date.getDate();

 this.day = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六")[date.getDay()];

 this.hour = date.getHours() < 10 ? "0" + date.getHours() : date.getHours();

 this.minute = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes();

 this.second = date.getSeconds() < 10 ? "0" + date.getSeconds() : date.getSeconds();

this.toString = function() {

  return "现在是:" + this.year + "年" + this.month + "月" + this.date + "日

作者  | 2010-12-6 14:28:34 | 阅读(104) |评论(0) | 阅读全文>>

输入框自动适应宽度

2010-12-1 17:56:52 阅读129 评论0 12010/12 Dec1

很早以前就看过ytzong的《宽度自适应的输入框》这篇文章,感觉很不错,非常详实,YUI的栅格决定宽度,内容决定高度确实很实用。

个人认为ytzong的这个方法有两点非常麻烦:

?<b><b><input type=”text”></b></b>需要套2层b标签;

?公式:.fluid-input-inner{padding-right:输入框左边框 + 输入框右边框 + 输入框左padding + 输入框右padding}也很麻烦经常忘记。

前段时间在一个项目中真好用到,同事啄米鸟模拟了一个宽度自适应的输入框,原理和ytzong的大致相同,但是解决了以上两个麻烦点。当然也有不足的地方。

看代码:

< !DOCTYPE HTML> 

<html> 

<head> 

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 

<style type="text/css"> 

h2 { margin:0; padding:10px 0; font-size:14px; }  

作者  | 2010-12-1 17:56:52 | 阅读(129) |评论(0) | 阅读全文>>

AJAX 类 (纯js)

2010-12-1 11:55:44 阅读33 评论0 12010/12 Dec1

//Ethan 20101130 Ajax 共有类

function ajax(url,link,action){

      var xmlHttp=xml_http();

      xmlHttp.open(action,url,false);

      xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

      xmlHttp.send(link);

      return xmlHttp.responseText;

}

function xml_http(){

 if (window.ActiveXObject) {

  var msxmls = ['MSXML3','MSXML2','Microsoft'];

  for (var i=0; i < msxmls.length; i++) {

   try {

    return

作者  | 2010-12-1 11:55:44 | 阅读(33) |评论(0) | 阅读全文>>

PHP Content-type 的说明

2010-12-1 11:08:42 阅读81 评论0 12010/12 Dec1

$mimetypes = array(

'ez' => 'application/andrew-inset',

'hqx' => 'application/mac-binhex40',

'cpt' => 'application/mac-compactpro',

'doc' => 'application/msword',

'bin' => 'application/octet-stream',

'dms' => 'application/octet-stream',

'lha' => 'application/octet-stream',

'lzh' => 'application/octet-stream',

'exe' => 'application/octet-stream',

'class' => 'application/octet-stream',

'so' => 'application/octet-stream',

'dll' => 'application/octet-stream',

'oda' => 'application/oda',

'pdf' => 'application/pdf',

'ai' => 'application/postscript',

作者  | 2010-12-1 11:08:42 | 阅读(81) |评论(0) | 阅读全文>>

查看所有日志>>

 
 
 
 
 
 
 
 
 
 
 
下载音乐盒  曲目表歌词秀
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
博友列表加载中...
 
 
 
 
 
 
 
列表加载中...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2012

   
创建博客 登录  
 关注