[转]续 “创造世界上最简单的 php开发模式”
“技术问题都是可以解决的,技术问题不是最最重要的”
最近帮过一些人解决技术问题,发现一个很严重的问题,他们的做法和我最开始写程序的时候是一样的,这样下去会走好多的弯路。现在有一类程序员太多,他们总是一味的追求“所谓的技术难点”,总是把心事放在一些边边角角的“程序代码”实现问题上,写程序就是为了完成功能,根本就不考虑什么重构/抽象/复用之类的问题,目标只有一个----完成任务。
程序代码是要学的,但是现在语言太多了,你能够每样语言的代码你都抠细节吗?代码总是灵活多变的,你根本就学不过来,应该把眼光放远点,考虑些代码以外的东西,例如设计模式/重构抽象复用/各种系统的设计需求分析/数据库的结构设计/单元测试/站点的结构设计......,如果作为一个单一的php程序员,最好找时间看看java周边的东西,php的周边技术实在是太少有人讲了。
就拿网站来说,其实网站设计的结构模式真的是很重要的,好的设计可以让你节省好多的时间,一个基本的企业宣传网站,写php程序和修改模板(不包括做页面模板),只要一天就可以完成,而且结构清晰,任何人都可以马上“上手”修改你的程序,你信吗?下面举个例子,给大家看看,然后再看看我的说法对不对。
以前发布过一篇文章叫“创造世界上最简单的------php开发模式”,不知道有人看过没,我们公司的网站“www.yeesoft.com”就是用这种结构作的,当时完成整个网站用了一个星期的时间(不包括制作模板)。
前天我们头让我把“http://www.chinacbc.org.cn/”先简单的做一下,实现一下基本功能,让客户先看着,他把网站的结构图发给我了,让我先作程序,第二天给我模板。于是决定用我们公司的网站改改。但是有些地方有些不同,例如会长和副会长,每个人要有一个自己的访谈栏目.........所以对后台程序先进行了修改,加入了几个功能:
1、重新设计了栏目数据表的结构。
2、文章添加的时候,根据栏目的设置,可以为某些栏目下的文章自动建立“文章的子栏目”
3、加入了事务管理机制,用来处理同时对几个表的添加修改删除。
4、模板解析的时候,解析“多栏”或“多列”表格的函数
完成这些修改和debug一共用了6--7个小时的时间。
昨天上午,模板发给我,为每个模板写了一个不到10行的程序,就是调用了一堆的
相关文档:
phpMyAdmin提示没字符串编码和字符串处理库php_mbstring
SSH连接上后:yum install php-mbstring安装扩展
vi usr/local/lxlabs/ext/php/etc/php.ini编辑PHP.ini文件
去掉一行的注释:extension=mbstring.so
(有些可以不用设置这两行,php.ini中不存在;extension=mbstring.so
,
只要mbString扩展安装到了extension ......
抓取到的内容在通过正则表达式做一下过滤就得到了你想要的内容,至于如何用正则表达式过滤,在这里就不做介绍了,有兴趣的,以下就是几种常用的用php抓取网页中的内容的方法。
1.file_get_contents
PHP代码
复制代码 代码如下:
<?php
$url = "http://www.jb51.net";
$contents = file_get_contents($url);
// ......
http://fw.qq.com/ipaddress返回类似:var IPData = new Array("61.51.71.183","","北京市","");
<?php
function get_ip_place(){
$ip=file_get_contents(http://fw.qq.com/ipaddress);
$ip=str_replace('"',' ',$ip);
$ip2=explode("(",$ip);
$a=substr($ip2[1],0,-2);
$b=explode(",",$a);
return&n ......
<?
$fp = fsockopen ("passport.baidu.com", 80,
$errno, $errstr, 30);
if (!$fp) {
echo "$errstr
($errno)<br>\n";
} else {
$msg="GET
/?login&username=lapiaotuan22&password=oyhz123456
HTTP/1.0\r\n";
$msg.="Host:passport.baidu.com \r\n&quo ......
2008-11-08 23:17
公司的代理服务器用的是squid,基于IP地址和MAC地址进行权限验证允许部分用户访问Internet。无奈列位高手们早已通晓盗用IP、MAC的方法来绕过squid的限制。近来考虑改为帐号认证。
由于同时在维护一个邮件服务器(qmail + vpopmail + mysql),邮件帐号用mysql管理,内网用户人手一邮箱。为了便于用户 ......