15个小时----从修改程序到自己些程序

 更新时间:2016年11月25日 15:20  点击:2075
本文属于被风吹倒的男子原创,拥有版权.来自www.iphp.org的论坛,网络转载请保留本信息.非网络转载请联系本人.个人站长自己写东西不容易,也为能够给我继续写下去的勇气和动力,请在转载时候不要删除本说明.本文是第一篇,我会找时间陆续把以后的东西写出来的。
很多朋友对于php的认识,长期停留在修改别人的程序上,因为可以修改所以懒惰于进步.或者是买来书看的时候,发现php的函数超级无敌多,看到函数库被吓晕了.等等.我自己是属于后者.本文是专门对于针对懒的花时间学习php,但是又想自己做点东西的懒人。
         到后来,我参加了学校的一个辅修班,老师上课讲,期末考试要考,于是乎,被逼着,居然能够自己写简单的代码了.
            因此,本文就是面向可以修改程序程序中的html,但是无法对程序构造进行修改的朋友,有基本的程序基础,就是:能明白if和else.够了,或者有同样基础的人均适合.高手可以走开.我到现在为止,使用常用的函数仍然需要查手册,仍然再写垃圾代码.
             好了,废话少说,我们进入第一阶段吧
            
        能够修改程序的朋友,在同学眼里都是网页高手级别的人物了.我如果开始从什么是变量说起,难免耽误您的时间.我自己又是搞文本收集出身的,所以我们就可以先从详细剖析一个程序的一部分开始.程序很简单,只有几个简单的判断,我会把程序的说明写的无敌详细.
    Quote:
如果您在哪里看不明白,请跟贴告诉我,我在第一时间修改,或者email我,我的邮件地址是rainboy#tom.com,请不要发垃圾邮件给我,我现在已经被垃圾邮件搞的很烦了
下面我们从剖析一个最简单的计数器开始
计数器的功能是:刷新一次页面,数字增加一.
程序如下
    Code:
[Copy to clipboard]    
<?
$datafile="data.txt";
$fp1=fopen($datafile,"r");
$num=fgets($fp1,10);
$num=trim($num);
fclose($fp1);
echo "您是第".$num."位客人";
$fp2=fopen($datafile,"w");
$num=$num+1;
fputs($fp2,"$num");
fclose($fp2);
?>
简介:一台机器用专线接入Internet作为防火墙,在内部网段上有一台WWW服务器 
(Redhat 6.1,Apache 1.3.9)希望这台机器能对外提供WWW服务器和基于apache 
的文件服务。供外部世界公共访问WWW服务器,或者外地分公司下载需要的文件。
优点: 内部的WWW服务器和文件服务完全与外部世界隔开,不直接连接到外部,通过 
防火墙上运行的Apache服务提供对内部的代理访问,增强了安全性,同时在 
防火墙上运行的Apache服务运用基于名字的虚拟主机技术,使得防火墙上的 
主页不会被访问到。符合了作为防火墙要求运行服务越少越安全的准则。
实现方法:在内部网段上的Apache服务器(192.168.11.2)存放的是公司主页,供内部 
和外部用户公共访问,并设置/home/ftp/pub目录为文件存放区域,用 
http://download.yourdomain.com/pub/来访问。
在防火墙上设置apache反向代理技术,由防火墙代理对内部网段上的访问。
步骤: 
一. 内部网段上的Apache服务器设置 
apache采用默认配置。主目录为/home/httpd/html,主机域名为 sun.yourdomain.com, 
且别名www.yourdomain.com, 并且设置srm.conf加一行别名定义如下: 
Alias /pub /home/ftp/pub/ 
且更改默认应用程序类型定义如下: 
DefaultType application/octet-stream 
最后在/etc/httpd/conf/access.conf中增加一项定义 
Options Indexes 
AllowOverride AuthConfig 
order allow,deny 
allow from all 
注:Options Indexes允许在找不到index.html文件的情况下允许列出目录/文件列表。
AllowOverride AuthConfig允许做基本的用户名和口令验证。
这样的话,你需要在/home/ftp/pub目录下放入.htaccess,内容如下: 
------- 
[root@shopu pub]# more .htaccess 
AuthName Branch Office Public Software Download Area 
AuthType Basic 
AuthUserFile /etc/.usrpasswd 
require valid-user 
------ 
然后用#htpasswd -c /etc/.usrpasswd user1 
在经过长达8个月的开发和测试以后,PHP 4.3.0正式发布了。就范围,时间,成就方面而言,这是最全面的PHP发行版,而且,作为综合用途的脚本语言舞台的一个重要的竞争者,它将更进一步的提高了PHP的地位。
命令行界面
这个版本最终完成了独立的命令行界面(CLI),这可以(配合PHP-GTK一起)用于开发内核和桌面应用程序。CLI是内建部分,但是在配置过程中,只有当CGI版本使用--disable-cgi开关时候,才自动安装;或者使用make install-cli 。在Windows系统中,可以在cli目录找到CLI。
与其他服务器API相比较,CLI有许多的不同。请在“PHP手册:命令行中使用PHP”一章中找到更详细的内容。
Streams流
streams流API是一个非常重要的未披露的特征。在PHP内核和扩展中,引进了统一的方法来处理文件、管道、sockets和其他I/O资源。
这意味着对用户来说,任何使用streams流的I/O函数(和几乎所有这些函数)可以访问内置的协议,例如HTTP/HTTPS和FTP/FTPS,也可以通过PHP脚本登记使用自定义协议。请参考“已支持的协议/包列表”以获取更详细的内容。
新安装系统
安装系统在其他重复的地方,使用了一个全局的Makefile代替了缓慢的递归,并且降低了固定的相关性的综合程度。aclocal工具只需要automake。整个安装过程更轻便,消耗更少资源。
改进
PHP 4.3.x有许多的改进和增强的地方:
捆绑发行GD库而且推荐一直使用捆绑的版本的GD库
vpopmail和cybermut扩充移到PECL
删除几个不常用的扩充(aspell, ccvs, cybercash, icap)和SAPIs(fastcgi,fhttpd)
提高了各种字符串处理函数的速度
删除Apache2过滤器,还在实验中(由于许多扩充基于外部的库是不安全的,在prefork中使用PHP和工人模式)
修正各种安全隐患(imap, mysql, mcrypt, file upload, gd等等)
在其他应用程序植入新的SAPI到PHP中(实验性)
大量的测试套件
在dba, gd, pcntl, sybase和xslt扩展重要的改进
新增的debug_backtrace()有助于调试
现在错误信息可以链接到描述错误或者函数问题的网页
Zend引擎修正小错误和做了小的性能的提高
大量的其他修正,更新和新功能等等

Using COM with PHP
     By John Lim.
PHP4 on Windows has been extended to support Microsoft's COM technology. However documentation on the COM functions is very sparse at the moment.
Here are some examples of stuff I have tried. Hope this gives you some ideas. Note that these only work when you are running PHP on a Windows Web server.
Active Data Objects (ADO) with PHP
ADO is Microsoft's database object technology. There are objects for connecting to databases, recordsets for data returned from queries, and field objects representing data elements.
Most databases do not support ADO directly. Instead most databases support 2 lower level Microsoft database technologies: ODBC and OLEDB. More databases support ODBC; but OLEDB has a reputation of being faster than ODBC.
ADO is then an API wrapper around ODBC and OLEDB.
This example opens a new ADO Connection object, opens the traditional NorthWind MS-Access database via ODBC. When we execute the SQL, a RecordSet object is returned. We then display the first 3 fields of the record-set.
<?
    $dbc = new COM("ADODB.Connection");
    $dbc->Provider = "MSDASQL";
    $dbc->Open("nwind");
    $rs = $dbc->Execute("select * from products");
    $i = 0;
    $fld0 = $rs->Fields(0);
    $fld1 = $rs->Fields(1);
    $fld2 = $rs->Fields(2);
    while (!$rs->EOF) {
        $i += 1;
        print "$fld0->value $fld1->value $fld2->value<BR>";
        $rs->MoveNext(); /*updates fld0, fld1, fld2 !*/
    }
有很多朋友为了PHP的MAIL函数而苦恼,其实关键就是它的SMTP服务的问题。现在常用的163、sina等大都不支持匿名发送邮件,就是说即使你把php.ini中的smtp设为smtp.163.net/smtp.sina.com.cn也会提示错误。怎么办呢?今日搞到了一个叫IMAIL的邮件服务软件,试了一试,居然成功了。现将方法说明如下:
1、安装IMAIL。按照默认的安装,一般如果你的机器的名称是server,那么它的smtp服务名称也是server.
2、看一下“控制面板”-“服务”,IMAIL SMTP SERVER是否起来了。
3、修改php.ini。将smtp=    server
4、测试一下吧。
<?php
echo "<html><body>";
$subject = "测试用IMAIL发送电子邮件";
$message = "<img src=http://202.110.200.242/test/nyc.jpg></img>HTML格式的邮件,想知道原程序吗?";
$extra="From:yukuang@163.net Content-Type:text/html;charset=gb2313 Content-Transfer-Encoding:8bit";
echo "Sending mail...";
mail ("yourmail", $subject, $message, $extra);
echo "</body></html>";
?>
[!--infotagslink--]

相关文章

  • C#开发Windows窗体应用程序的简单操作步骤

    这篇文章主要介绍了C#开发Windows窗体应用程序的简单操作步骤,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-04-12
  • C++调用C#的DLL程序实现方法

    本文通过例子,讲述了C++调用C#的DLL程序的方法,作出了以下总结,下面就让我们一起来学习吧。...2020-06-25
  • 微信小程序 页面传值详解

    这篇文章主要介绍了微信小程序 页面传值详解的相关资料,需要的朋友可以参考下...2017-03-13
  • C#使用Process类调用外部exe程序

    本文通过两个示例讲解了一下Process类调用外部应用程序的基本用法,并简单讲解了StartInfo属性,有需要的朋友可以参考一下。...2020-06-25
  • 微信小程序二维码生成工具 weapp-qrcode详解

    这篇文章主要介绍了微信小程序 二维码生成工具 weapp-qrcode详解,教大家如何在项目中引入weapp-qrcode.js文件,通过实例代码给大家介绍的非常详细,需要的朋友可以参考下...2021-10-23
  • 使用GruntJS构建Web程序之构建篇

    大概有如下步骤 新建项目Bejs 新建文件package.json 新建文件Gruntfile.js 命令行执行grunt任务 一、新建项目Bejs源码放在src下,该目录有两个js文件,selector.js和ajax.js。编译后代码放在dest,这个grunt会...2014-06-07
  • uniapp微信小程序:key失效的解决方法

    这篇文章主要介绍了uniapp微信小程序:key失效的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-20
  • 将c#编写的程序打包成应用程序的实现步骤分享(安装,卸载) 图文

    时常会写用c#一些程序,但如何将他们和photoshop一样的大型软件打成一个压缩包,以便于发布....2020-06-25
  • PHP常用的小程序代码段

    本文实例讲述了PHP常用的小程序代码段。分享给大家供大家参考,具体如下:1.计算两个时间的相差几天$startdate=strtotime("2009-12-09");$enddate=strtotime("2009-12-05");上面的php时间日期函数strtotime已经把字符串...2015-11-24
  • 微信小程序 网络请求(GET请求)详解

    这篇文章主要介绍了微信小程序 网络请求(GET请求)详解的相关资料,需要的朋友可以参考下...2016-11-22
  • 微信小程序自定义tabbar组件

    这篇文章主要为大家详细介绍了微信小程序自定义tabbar组件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-03-14
  • 微信小程序如何获取图片宽度与高度

    这篇文章主要给大家介绍了关于微信小程序如何获取图片宽度与高度的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-10
  • c# 对CSV文件操作(写入、读取、修改)

    这篇文章主要介绍了c# 如何对CSV文件操作,帮助大家更好的理解和学习C#,感兴趣的朋友可以了解下...2020-11-03
  • JS双击变input框批量修改内容

    这篇文章主要介绍了JS双击变input框批量修改内容的实现代码,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2017-01-09
  • 微信小程序(应用号)开发新闻客户端实例

    这篇文章主要介绍了微信小程序(应用号)开发新闻客户端实例的相关资料,需要的朋友可以参考下...2016-10-25
  • 微信小程序实现点击导航条切换页面

    这篇文章主要为大家详细介绍了微信小程序实现点击导航条切换页面,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-11-19
  • 微信小程序手势操作之单触摸点与多触摸点

    这篇文章主要介绍了微信小程序手势操作之单触摸点与多触摸点的相关资料,需要的朋友可以参考下...2017-03-13
  • 微信小程序实现canvas分享朋友圈海报

    这篇文章主要为大家详细介绍了微信小程序实现canvas分享朋友圈海报,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-21
  • Python爬取微信小程序通用方法代码实例详解

    这篇文章主要介绍了Python爬取微信小程序通用方法代码实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-09-29
  • 微信小程序 页面跳转传递值几种方法详解

    这篇文章主要介绍了微信小程序 页面跳转传递值几种方法详解的相关资料,需要的朋友可以参考下...2017-01-16