Login
网站首页 > 文章中心 > 其它

php手册复习整理第一章

作者:小编 更新时间:2023-08-16 08:53:23 浏览量:90人看过

php新手如何入门

PHP的背景恐怕就不用赘言了,我相信大家选择一种语言,并不是看它的背景和悠久历史,更重要的是看它的实用性,华而不实的语言哪怕是再辉煌的历史,也毕将步向没落,可喜的是PHP经受住了考验,也所以呢,它确实是一种值得学习的语言.

一直是听从别人的经验长大的,也所以呢在前辈们的经验里让少走了许多的弯路,更快的步入了正规,在此向那些我至尽不知道其名字的前辈们道声谢谢,在的眼里, 帮助不分大小,只要是帮助,总会让的心里暖融融的,我想,前辈们帮助我,并不是为了得到我的一句谢谢,更多的是出于一种责任感和对的期望,所以我想,只有 学好PHP,才能对得起前辈们的汗水.

正如我所说的,也终于感觉到了一种责任感,不知道自己的经验到底能帮助新手多少,但是明白,现在到了履行责任的时候了,我有必要把自己的经验告诉给所有希望学好PHP的人,只有这样才能让中国的PHP不断的进步,不断的发展,在世界上占据一席之地.

学习PHP的这段期间,感觉国内的PHP环境越来越成熟,规范也在逐渐的健全,PHPCHINA的成立,标志着与官方直接挂钩的PHP机构在中国正式落户了,在此献上迟到的掌声!

好的,切入正题:

我想在讲述自己的学习方式前,对那些期望能从我的文章中获得有用信息的人说一句心里话:

的文章不会对您的学习起到实质性的作用,您能否成功,还得靠自己的,坚持,坚持,再坚持,就是步入成功的不二法门.

我先把我自己学习PHP的过程做一下概括:

(1)熟悉HTML/CSS/JS等网页基本元素,完成阶段可自行制作完整的网页,对元素属性达到熟悉程度

我的这套线路可能跟许多学习PHP的爱好者不谋而合,这也算是一个循序渐进的学习过程,不过新手不要看到上面的概括就以为学习蛮简单的,在此不得不对您稍微泼一下冷水,任何东西其实都不简单,即使是小吃部的烧饼也不是一下子就会做成的.

我先解释一下我的学习思路.

首先,理解网站这一概念之后不难看出,任何网站都是由网页组成的,也就是说想完成网站,必须先学会做网页,所以呢必须要掌握了HTML,才能为今后制作网站打下基础.

在学习HTML中我想边学边做是最有效的方式,当然这一方式对于学习PHP同样是最有效的.

HTML中的任何元素都要亲自实践,只有明白了什么元素会起到什么效果之后,你才会记忆深刻,而一味的啃书,绝对是不行的,我想大部分新手之所以觉得概念难学,大部分是一个字"懒",懒是阻止进步的最大敌人,所以克服掉懒的习惯,才能更快的学好一样东西.

也许您在学习PHP的时候只想尽快的开发一个网站,也就会想我做网站,干嘛要学什么网页这些小儿科?不难看出,眼高手低的新手不在少数,这种思想无疑于建造空中楼阁,你不建地基,何来的房顶呢?

OK,掌握静态网页的制作技术是学习开发网站的先决条件,这一点就讲到这里,因为这篇文章不是教程文章,也就不对技术进行深入的刨析了.

我假设你目前已经可以完成一个静态页面了,当然,做的好看难看是另外一说,的第一个网页也没好看到哪去,但是"孩子"再丑,咱们做"爹妈"的也不能嫌弃不是?这毕竟是咱的成果.

那么咱们就开始学习动态语言的概念吧,刚一接触动态语言,可能很多人都会蒙了,怎么这乱七八糟的东西,在网页里显示的时候却是另外一码事?其实这并不算乱 七八糟,你写的HTML代码不也一样是一堆堆的字符吗?毕竟,代码并不是作为直接输出的,而是经过处理的,说白了,HTML是经过HTML解析器,而 PHP当然也就通过PHP解析器了,跟学习HTML一样的道理,想让任何的解析器完成操作,就必须使用它们专用的语法结构,所以PHP长相奇怪也就不足为 奇了.

对于PHP的理解是新手最难迈过的一道门槛,不过你应该感到幸运的是PHP已经最大极限的为了新手而努力了,如果你学过其他的语言,也许会觉得PHP的确相当的简单,但是如果你之前什么都没学过,那么阿弥陀佛,硬着头皮琢磨吧.

书过三遍自然熟,这个简单的道理告诉我们,即使你理解不了PHP,但是也必须先跟它混个脸熟,看,一遍遍的看,看的同时一边琢磨,一边按照它所教的打代码,即使你搞不清楚那些代码到底是干嘛的,但是起码你应该找找感觉.

在一段挣扎之后,聪明的你,显然已经逐渐的开悟了,慢慢的理解了编程的概念,那么祝贺你,你已经迈出了成功的第一步.

搞清楚HTML和PHP的概念,那么PHP和HTML混合编程应该不成问题,在这期间,你完全可以让PHP给你算算一加一等于几,然后在浏览器输出,不要 觉得幼稚,这的确是跟阿波罗登月一样,你打的是一小段代码,但是对于你的编程之路,可是迈出了一大步啊!兴奋吧?但是不得不再给你泼点冷水,您还是菜鸟一 个.

高兴一段时间就必须继续努力了,此时此刻呢就是学习数据库了,MYSQL可算是PHP的黄金搭档了,不过,虽然话是这么说,你也可能恨不得把MYSQL给生吞活剥了,因为这一行一列的东东简直让自己头晕目眩.

头晕归头晕,目眩归目眩,你不可能吃饭的时候咬了自己一下舌头就从此不吃饭了不是?放下畏惧,继续努力,咱们是来征服它的,而不是被它征服的,振奋起来吧同志.

在一番搏斗之后,你终于理解了数据库的概念,而且让你兴奋不已的是你终于可以通过PHP来连接数据库了,这期间你是怎么学会的,我们不去考证了,但是事实证明,你已经可以了.

学会了PHP和数据库的你,无疑是左手拿着MOTOLOLA右手拿着NOKIA,要多潇洒,有多潇洒,哈哈,终于学会了,但是可能这个时候,又会有人不经意的拍拍肩膀对你说:哥们,别高兴的太早,你还是菜鸟,离学会还差着一大截呢!

等到你发奋努力的学会了用PHP成功的插入,删除,更新数据的时候,显然,你已经距离成功指日可待了.

这个时候的你也许是这种状态:

你会HTML吗?会,我能编好几个大表格排板的网页啦!

你会PHP吗?会,我会把一加一的运算写在函数里,然后调用啦!

你会MYSQL吗?会,我会把我的信息在数据库里插入删除啦

那,此时此刻呢你该怎么做呢?我觉得,小试一下身手,大概是没问题了,那么交给你个任务,做个留言本吧,这和HELLO WORLD有一比啊!^_^,同是新手面临的第一道关.

花了一段时间,你终于学会把表单的数据插入数据库,然后显示出来了,应该说一个程序的雏形已经诞生了.

但是,你可能瞅瞅东,看看西,人家这个编论坛,那个CMS,还有那啥CRM,我啥时候写一个呢?

巩固了自己的知识,熟悉了PHP和MYSQL开发的要领之后,再回头看你写的那个留言本,你也许会怀疑那真的是你写的吗?当然,如果屋里还有鬼的话,也许是它写的-_-

这个时候,你的留言本应该加入注册以及分页功能了,而如果你更强的话,UI(用户界面)也可以加强,完成之后,感觉是不是特有成就感?不管怎么样,咱好歹 是写了一个动态网站程序了,放在自己的网站上耍耍吧,让好朋友来看看,嘿,看咱写的多棒,然后再在网上宣传一下.

几天之后你再打开留言本,哎?哇,一下弹出N多页面!很明显,你的留言本并没有做好安全防范,被人用JS代码小小的耍了一下,我很同情你这个时候的感受,但是没有别的办法了,继续努力吧!

你发奋努力,熟悉了安全方面的问题,然后又设计了一些程序,感觉还不错.

那么此时此刻呢,这就算学会啦?NO,NO,NO,还早呢,你至尽还没碰过OOP之类的吧?模板呢?

恩,学!加紧学呀学,学会了这些之后,你又学会了生成静态网页,现在你应该接触一下XML了,恩,XML也了解了,那么AJAX你也得接触接触吧?AJAX完了....然后...

都说到这里了大家应该明白,你绝对不会发现你全部都学会了,一些真正的强人总会搞出新玩意来丢给你,你不学就落后了,也印证了前人的经验,果然是学无止境啊!

我想通过我的一番YY,你也应该大致熟悉了一些学习过程,也许我的过程和你的有些出路,但是不管怎么样是殊途同归,我写这么多,也只是给大家一个借鉴的机会,至于好与不好,不敢打包票^0^

学东西,永远不要妄想有速成这一说,告诉你了一个方式,但是缺少努力这一环节,那也是白搭.

但是有一点我可以给你保证的就是,你学会了PHP,那么学其他的语言,肯定速成,反过来也一样,如果你之前学过其他的语言,那么学PHP肯定快.

不过语法好学,但是怎么用语法来实现每个人都有每个人的方式,几乎是各有千秋.然而借鉴别人成功的代码,绝对是有益无害,所以呢,多看那些经过千锤百炼凝出来的经典代码,是进阶的最好方法.

讲了这么多,无非是想说:学习PHP不仅要掌握方法,更多的是付出汗水,我不希望看到中途放弃的人,相信自己,相信自己的选择,更要相信自己的能力,如果 自己想放弃,暴力一点的话,就自己抽自己一个嘴巴,然后大吼:别人可以,我为什么就不可以?(是不是有点阎罗教练的味道,的确是电影看多了,抽嘴巴是会痛 的,各位其实明白这个道理了就行了)

另外要叮嘱各位的是,抵御诱惑,ASP/PHP/JSP/.NET的对比也许会让你无所适从,你也许学了一半PHP,又开始打C#的主意,或者有人说 JAVA很强,这个时候的你绝对不能动摇,哪怕你真想学,也得学会了PHP.然后再学,见异思迁是最不可取的,狗熊掰玉米就是这个道理,如果经常中途放 弃,只能是一无所获,还浪费了N多的时间和经历,得不偿失,最重要的是,你会被别人瞧不起,没有人会喜欢和见异思迁的人交朋友,因为这种人太不安分,太不 可靠,所以呢,你必须要强迫自己完成自己的目标,哪怕可能会很难受,也得坚持,毅力就是这么锻炼出来的.

php要学哪些内容?

需要了解的知识包括HTML、CSS、JavaScript,不需要深入地学习,有个概念性的理解即可.

知识学习有三个阶段:

PHP入门段

进步段

这时候需要PHP手册了,了解常用函数.学习MySQL( 数据库 ),了解PHP各大框架 --thinkPHP,Yii,Laravel等, 然后选一款框架尝试搭建一blog,实现常规登录、注册、文章发布和修改.

提高段

这一阶段的知识点主要包括:了解Linux ,在Linux下搭建 PHP环境(这时候要脱离 xamp,wamp等之流了);知道使用版本控制:git svn.

会PHP的进来

php

//验证密码

html

head

style type="text/css"

!--

body,td{

color: #000000;

}

a {

text-decoration: none;

a:hover {

text-decoration: underline;

--

/style

/head

body

form name="myform" method="post" action="zip.php"

if(!$_REQUEST["myaction"]):

table width="100%" border="0" cellspacing="0" cellpadding="0"

tr

td width="11%"验证密码: /td

(源文件中设定的密码) /td

/tr

tdinput name="myaction" type="hidden" id="myaction" value="dolist"/td

tdinput type="submit" name="Submit" value=" 进 入 "/td

/table

elseif($_REQUEST["myaction"]=="dolist"):

if($_REQUEST['password'] != $password) die("输入的密码不正确,请重新输入.");

echo "选择要压缩的文件或目录:br";

$fdir = opendir('./');

while($file=readdir($fdir)){

if($file=='.'|| $file=='..') continue;

echo "input name='dfile[]' type='checkbox' value='$file' ".($file==basename(__FILE__)?"":"checked")." ";

if(is_file($file)){

echo "文件: $filebr";

}else{

echo "目录: $filebr";

br

压缩文件保存到目录:

(留空为本目录,必须有写入权限)br

压缩文件名称:

(.zip)br

input name="password" type="hidden" id="password" value="?=$_POST['password'];?"

input name="myaction" type="hidden" id="myaction" value="dozip"

input type='button' value='反选' onclick='selrev();'

input type="submit" name="Submit" value=" 开始压缩 "

script language='javascript'

function selrev() {

with(document.myform) {

for(i=0;ielements.length;i◆◆) {

thiselm = elements[i];

if(thiselm.name.match(/dfile\[]/)) thiselm.checked = !thiselm.checked;

/script

elseif($_REQUEST["myaction"]=="dozip"):

set_time_limit(0);

class PHPzip{

var $file_count = 0 ;

var $datastr_len = 0;

var $dirstr_len = 0;

var $filedata = ''; //该变量只被类外部程序访问

var $gzfilename;

var $fp;

var $dirstr='';

/*

返回文件的修改时间格式.

只为本类内部函数调用.

*/

$timearray = ($unixtime == 0) ? getdate() : getdate($unixtime);

$timearray['mon'] = 1;

$timearray['mday'] = 1;

$timearray['hours'] = 0;

$timearray['minutes'] = 0;

$timearray['seconds'] = 0;

初始化文件,建立文件目录,

并返回文件的写入权限.

function startfile($path = 'shenbin.zip'){

$this-gzfilename=$path;

$mypathdir=array();

do{

$mypathdir[] = $path = dirname($path);

}while($path != '.');

@end($mypathdir);

$path = @current($mypathdir);

@mkdir($path);

}while(@prev($mypathdir));

if($this-fp=@fopen($this-gzfilename,"w")){

return true;

return false;

添加一个文件到 zip 压缩包中.

function addfile($data, $name){

$name = str_replace('\\', '/', $name);

if(strrchr($name,'/')=='/') return $this-adddir($name);

. '\x' . $dtime[0] . $dtime[1];

eval('$hexdtime = "' . $hexdtime . '";');

$unc_len = strlen($data);

$zdata = gzcompress($data);

$c_len = strlen($zdata);

//新添文件内容格式化:

$datastr .= "\x00\x00"; // gen purpose bit flag

$datastr .= $hexdtime; // last mod time and date

$datastr .= pack('V', $c_len); // compressed filesize

$datastr .= pack('V', $unc_len); // uncompressed filesize

$datastr .= pack('v', strlen($name)); // length of filename

$datastr .= pack('v', 0); // extra field length

$datastr .= $name;

$datastr .= $zdata;

$datastr .= pack('V', $c_len); // compressed filesize

$datastr .= pack('V', $unc_len); // uncompressed filesize

fwrite($this-fp,$datastr); //写入新的文件内容

$my_datastr_len = strlen($datastr);

unset($datastr);

//新添文件目录信息

$dirstr .= "\x00\x00"; // version made by

$dirstr .= "\x00\x00"; // gen purpose bit flag

$dirstr .= $hexdtime; // last mod time date

$dirstr .= pack('V', $c_len); // compressed filesize

$dirstr .= pack('V', $unc_len); // uncompressed filesize

$dirstr .= pack('v', strlen($name) ); // length of filename

$dirstr .= pack('v', 0 ); // extra field length

$dirstr .= pack('v', 0 ); // file comment length

$dirstr .= pack('v', 0 ); // disk number start

$dirstr .= pack('v', 0 ); // internal file attributes

$dirstr .= pack('V',$this-datastr_len ); // relative offset of local header

$dirstr .= $name;

$this-dirstr .= $dirstr; //目录信息

$this - file_count ◆◆;

$this - dirstr_len ◆= strlen($dirstr);

$this - datastr_len ◆= $my_datastr_len;

function adddir($name){

$name = str_replace("\\", "/", $name);

$datastr .= pack("V",0).pack("V",0).pack("V",0).pack("v", strlen($name) );

$datastr .= pack("v", 0 ).$name.pack("V", 0).pack("V", 0).pack("V", 0);

$dirstr .= pack("V",0).pack("V",0).pack("V",0).pack("v", strlen($name) );

$dirstr .= pack("v", 0 ).pack("v", 0 ).pack("v", 0 ).pack("v", 0 );

function createfile(){

//压缩包结束信息,包括文件总数,目录信息读取指针位置等信息

pack('v', $this - file_count) .

pack('V', $this - dirstr_len) .

pack('V', $this - datastr_len) .

"\x00\x00";

fwrite($this-fp,$this-dirstr.$endstr);

fclose($this-fp);

if(!trim($_REQUEST[zipname])) $_REQUEST[zipname] = "shenbin.zip"; else $_REQUEST[zipname] = trim($_REQUEST[zipname]);

if(!strrchr(strtolower($_REQUEST[zipname]),'.')=='.zip') $_REQUEST[zipname] .= ".zip";

$_REQUEST[todir] = str_replace('\\','/',trim($_REQUEST[todir]));

if(!strrchr(strtolower($_REQUEST[todir]),'/')=='/') $_REQUEST[todir] .= "/";

if($_REQUEST[todir]=="/") $_REQUEST[todir] = "./";

function listfiles($dir="."){

global $faisunZIP;

$sub_file_num = 0;

if(is_file("$dir")){

if(realpath($faisunZIP -gzfilename)!=realpath("$dir")){

$faisunZIP - addfile(implode('',file("$dir")),"$dir");

return 1;

return 0;

$handle=opendir("$dir");

while ($file = readdir($handle)) {

if($file=="."||$file=="..")continue;

if(is_dir("$dir/$file")){

$sub_file_num ◆= listfiles("$dir/$file");

else {

if(realpath($faisunZIP -gzfilename)!=realpath("$dir/$file")){

$faisunZIP - addfile(implode('',file("$dir/$file")),"$dir/$file");

$sub_file_num ◆◆;

closedir($handle);

if(!$sub_file_num) $faisunZIP - addfile("","$dir/");

return $sub_file_num;

function num_bitunit($num){

$bitunit=array(' B',' KB',' MB',' GB');

for($key=0;$keycount($bitunit);$key◆◆){

return $num_bitunit_str;

if(is_array($_REQUEST[dfile])){

$faisunZIP = new PHPzip;

if($faisunZIP - startfile("$_REQUEST[todir]$_REQUEST[zipname]")){

echo "正在添加压缩文件...brbr";

$filenum = 0;

foreach($_REQUEST[dfile] as $file){

$filenum ◆= listfiles($file);

$faisunZIP - createfile();

echo "br压缩完成,共添加 $filenum 个文件.bra href='$_REQUEST[todir]$_REQUEST[zipname]'$_REQUEST[todir]$_REQUEST[zipname] (".num_bitunit(filesize("$_REQUEST[todir]$_REQUEST[zipname]")).")/a";

echo "$_REQUEST[todir]$_REQUEST[zipname] 不能写入,请检查路径或权限是否正确.br";

echo "没有选择的文件或目录.br";

endif;

/form

/body

/html

php教程 php的入门教程

①.、打开电脑中的php开发工具Dreamweaver,新建一个PHP,保存为php格式.

以上就是土嘎嘎小编为大家整理的php手册复习整理第一章相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章