以前把php当作一个纯粹的系统编程脚本,从3月份开始第一次使用php写web网站,一点经验在这里总结一下。
一:打开错误显示和错误日志。在php.ini中把dispaly_errors设置为On,或者在脚本开头用ini_set('display_errors', 'On')。
二:
调试工具必备。需要两种调试工具:第一种是调试php脚本的,就像C调试器那样可以在脚本中设置断点,单步执行,运行时查看变量值、修改变量值等,我用的
是xdebug +
vim;第二种是调试HTTP的,当页面打开后一片空白,连个错误信息都没有,或者有些ajax调用的地方出现程序错误,这个时候很需要一个工具来查看实
际的HTTP通信过程,我用的是firefox的插件httpfox。
三:自定义错误处理和异常处理程序。错误处理和异常处理这两个是极
好用的东东,我一般用错误处理来向终端用户报告错误,用异常来记录应用程序运行时错误,比如数据库连接错误等。这两类错误我自己也时常分不清楚,我使用它
们的时候基于这个想法:当程序运行出错时,向用户报告的错误信息一定要友好且隐藏数据库和后台代码细节,这个时候就用trigger_error引发自定
义的错误处理程序来报告错误;同时程序员要能够在事后知道程序为什么会出错,这需要记录错误发生处的调用 ......
    
        
    
    查找mysql_pconnect时在mysql帮助文档上发现的,记在这里。
web server使用php生成一个web页面的三式有以下三种:
一:把PHP作为CGI Wrapper。这种方式下,每个到达web server的请求都会导致一个php解析器进程被创建,当这个php页面执行结束时,这个php解析器进程终止。
二:
在多进程的web server中,把php作为web
server的一个模块。这是目前最流行的做法,但是当前也只有apahce用的这种方式。一个多进程的web
server通常有一个总的父进程协调一堆子进程来工作。当页面请求到达web
server时,这个父进程把这个请求交给一个空闲的子进程去完成。同一个client的两次请求不一定被同一个web server的子进程处理。
三:在多线程的web server中,把php作为一个插件。比如IIS使用这种方式。它的工作原理和多进程工作原理一样,不过它是使用线程而非进程。
 ......
    
        
    
    from:http://www.xland.com.cn/article/7/81/0804/28778.htm
本类实现:
数据库信息导出:word,excel,json,xml,sql
数据库恢复:从sql,从文件
具体用法:
首先新建测试用数据库mytest,然后在里面建张表 
PHP代码:
以下是代码片段:
-- 
-- 表的结构 `test` 
-- 
CREATE TABLE `test` ( 
   `id` int(11) NOT NULL auto_increment, 
   `name` varchar(100) NOT NULL, 
   `email` varchar(200) NOT NULL, 
   `age` int(3) NOT NULL, 
   PRIMARY KEY   (`id`) 
) ENGINE=MyISAM   DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; 
-- 
-- 导出表中的数据 `test` 
-- 
INSERT INTO `test` (`id`, `name`, `email`, `age`) VALUES 
(1, 'pjq518', [email=]'pjq518@126.com'[/email], 22), 
(2, 'xiaoyu', [email=]'xiaoyu@126.com'[/email], 21);
1.导出ext能方便调用的json 
PHP代码:
以下是代码片段:
 $db=new db(); 
echo  $db->toExtJson('test');
//输出结果为
//{'totalCount':'2','rows':[{'id':'1','name':'pjq518','email':'pjq518@126.com','ag ......
    
        
    
    from:http://www.xland.com.cn/article/7/81/0804/28778.htm
本类实现:
数据库信息导出:word,excel,json,xml,sql
数据库恢复:从sql,从文件
具体用法:
首先新建测试用数据库mytest,然后在里面建张表 
PHP代码:
以下是代码片段:
-- 
-- 表的结构 `test` 
-- 
CREATE TABLE `test` ( 
   `id` int(11) NOT NULL auto_increment, 
   `name` varchar(100) NOT NULL, 
   `email` varchar(200) NOT NULL, 
   `age` int(3) NOT NULL, 
   PRIMARY KEY   (`id`) 
) ENGINE=MyISAM   DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ; 
-- 
-- 导出表中的数据 `test` 
-- 
INSERT INTO `test` (`id`, `name`, `email`, `age`) VALUES 
(1, 'pjq518', [email=]'pjq518@126.com'[/email], 22), 
(2, 'xiaoyu', [email=]'xiaoyu@126.com'[/email], 21);
1.导出ext能方便调用的json 
PHP代码:
以下是代码片段:
 $db=new db(); 
echo  $db->toExtJson('test');
//输出结果为
//{'totalCount':'2','rows':[{'id':'1','name':'pjq518','email':'pjq518@126.com','ag ......
    
        
    
    NGINX安装手记
 
一、环境需要和下载
1.       利用YUM安装必须的程序库
# yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
 
 
2.       下载安装环境所需要的源代码程序安装包
#cd /home/soft/nginx_soft/
 
wget http://blog.s135.com/soft/linux/nginx_php/nginx/nginx-0.7.58.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/php/php-5.2.9.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/phpfpm/php-5.2.9-fpm-0.5.10.diff.gz
wget http://blog.s135.com/soft/linux/nginx_php/mysql/mysql-5.1.34.tar.gz
wget http://blog.s135.com/soft/linux/nginx_php/libiconv/libiconv-1.13.tar.gz
 ......
    
        
    
    初学PHP的时候,我们经常被PHP的绝对路径和相对路径弄的晕头转向。路径问题经常导致include及require命令不能加载到指定的页
面,从而导致Web程序运行错误。本文将跟大家一起探讨一下PHP路径问题的常用解决方案。
下面我们先做一个个简单的示例:
 
上图是一个简单Web项目的结构图,其中各文件的代码如下: 
root/index.php : 
<?php 
require_once ‘app/blog.php’;
$blog=new Blog();
echo $blog->GetBlogInfo();
?>
root/app/blog.php :[/B] 
<?php 
require_once ‘../lib/smarty/functions.php’;
?> 
<?php 
class Blog
{ 
   public function GetBlogInfo()
   {
     return ‘This is a test of blog!’;
   }
} 
?> 
<?php 
echo ‘root/app/blog.php loaded successed!</br>’; 
?>
首先,我们从浏览器里直接输入http://localhost/root/app/blog.php,浏览器显 ......
    
        
    
    <?php
//对象
class MyJson{
                      $id=1;
                      $siteName='web编程站';
                      $siteUlr="http://www.baidu.com";
}
$objedt=new MyJson;
echo json_encode($object)."<br />";
//显示的结果为:
{id="1",siteName:"web\u7f16\u7a0b\u7ad9",siteUrl:"http:\/\/www.baidu.com"}
//+++++++++++++++++++++++++++数字索引数组++++++++++++++++++++++++++++++
$arr1=array(1,"web编程站","http://www.baidu.com");
echo json_encode()."<br />";
//显示结果为:
[1,"web\u7f16\u7a0b\u7ad9","http:\/\/www.baidu.com"]
//+++++++++++++++++++++++++关 ......
    
    	 
	 总记录数:2174; 总页数:363; 每页6 条; 
首页 上一页 [1] [2] [3] [4] 5 
[6] [7] [8] [9] [10]  下一页 尾页