PHP编程:PHP进修笔记(收拾整顿完成)
多去关于PHP的网站,尤其有很多经典的文章,多读读这些文章显然是有好处的。 1、如今入手下手进修PHP老猴要弄个网站,供应主机空间的以php+mysql的占多数,对照价钱也绝对较低,所以正好可以进修php.
不外,后来,他又说不急,我也就没有正式入手下手.明天特地玩玩,还行,分歧于java是强类型言语,php是无类型言语,这一点和_javascript是类似的。
参考以下的示例代码(改编自php manual):
<?
$bool = TRUE; // a boolean
$str = "foo"; // a string
$int = 12; // an integer
echo gettype($bool); // prints out "boolean"
echo "\n";
echo gettype($str); // prints out "string"
echo "\n";
$bool=12;
echo gettype($bool); // prints out "integer"
/*
这里,因为从头将数值12赋给了原本是boolean类型的变量bool,如许,变量bool的类型酿成了integer,像java那样的强类型言语,赋值只产生在同类型之间。
*/
?>
<!----> <!---->
2、PHP不同凡响的continue
continue不同凡响的地方在于承受一个可选的数字参数来决意跳过几重轮回到轮回开头。
#php_continue.php
/*
在php中,continue 在轮回布局用用来跳过本次轮回中残剩的代码并入手下手履行下一次轮回。
这一点和其他言语是分歧的,
不外,尚有妙处:continue 承受一个可选的数字参数来决意跳过几重轮回到轮回开头。
*/
$i = 0;
$j = 0;
while ($i++ < 3) {//level 3
echo "Outer
\n";
while (1) {//level 2
echo " Middle
\n";
while (1) {//level 1
echo " Inner
\n";
continue 3;
}
echo "This never gets output.
\n";
}
echo "Neither does this.
\n";
$j++;
//after runs continue 3,it comes to the end of level 3
}
echo "\$j=$j";//output: $j=0
?>
3、PHP中的数组
<?php
#php_array.php
/*默许的体例下,php的array的key长短负整数,这类情况和多半言语如c,c++,java中的数组是分歧的
*从这点看,java中的数组实际上是php中数组的一种默许的体例;而php的array则还有java中Map类的特征:key-value
×php manual中的说法“PHP 中的数组实践上是一个有序图。图是一种把 values 映照到 keys 的类型”
*/
$array=array("0","1","2","3","4","5");
print_r($array);
/*
output:
Array
(
=> 0
=> 1
=> 2
=> 3
=> 4
=> 5
)
*/
//用 count() 函数来数出数组中元素的个数
for ($i=0,$size=count($array);$i<$size;$i++)
{
echo$array[$i];
echo "\n";
}
/*
output:
0
1
2
3
4
5
*/
<!----> <!---->
/*use foreach to loop*/
echo "foreach to loop\n";
foreach($array as $temp){
echo($temp);
echo "\n";
}
//output as above
<!----> <!---->
/* foreach example 1: value only */
<!----> <!---->
$a = array (1, 2, 3, 17);
<!----> <!---->
foreach ($a as $v) {
print "Current value of \$a: $v.\n";//这里利用了本义字符\,使得$a作为一个字串输入
}
/*
output:
Current value of $a: 1.
Current value of $a: 2.
Current value of $a: 3.
Current value of $a: 17.
*/
<!----> <!---->
/* foreach example 2: value (with key printed for illustration) */
<!----> <!---->
$a = array (1, 2, 3, 17);
<!----> <!---->
$i = 0; /* for illustrative purposes only */
<!----> <!---->
foreach ($a as $v) {
print "\$a[$i] => $v.\n";
$i++;
}
$array2=array("a"=>"avalue","b"=>"bvalue","c"=>"b");
print_r($array2);
echo "****\n";
echo $array2[$array2["c"]];//
//echo $array2[$array2];//妄图像java那样利用数组下标体例,是有效的
echo "\n***\n";
/*output:
****
bvalue
***
*/
$arr = array("foo" => "bar", 12 => true);
<!----> <!---->
echo $arr["foo"]; // bar
echo $arr; // 1
?>
4、可变变量、字符串运算符和数组运算符:相异于其他言语的局部
<?php
#php的可变变量
/*可变变量就是变量名可以静态的设置和利用的变量。
一个可变变量获得了一个通俗变量的值作为这个可变变量的变量名。
由于通俗变量的值是可变的,所以可变变量的变量名也是可变的。
*/
//可变变量合适在甚么场所利用呢?
$a = "hello";//界说一个通俗变量
$$a = "world";//界说一个可变变量
echo "$a\n";//output:hello
echo "${$a}\n";//利用可变变量
//同echo "$hello\n";//output:world
echo "$hello\n";
?>
<!----> <!---->
<?php
#php的字符串运算符
//毗连运算符(“.”)
$a="first";
$b=$a."==>second";//now $b is "first==>second"
echo "$b\n";
<!----> <!---->
//毗连赋值运算符(“.=”)
//the same to $a=$a."==>second"
$a.="==>second";//now &a is "first==>second"
echo "$a\n";
<!----> <!---->
/*其实可以了解为就只要一种,即毗连运算符
这里的点(".")毗连运算符和java言语中的字符串联接符("+")是相似的。*/
?>
<!----> <!---->
<?php
#php的数组运算符:+
/* PHP 唯一的一个数组运算符是 + 运算符。
它把右侧的数组附加到右边的数组后,然而反复的键值不会被掩盖。
亦即,以右边的数组为主导,若附加其上的(右侧的)数组中有与其key反复的局部将被疏忽
*/
$a = array("a" => "apple", "b" => "banana");
$b = array("a" =>"pear", "b" => "strawberry", "c" => "cherry");
$a1=array("c"=>"a1_cherry","d"=>"a1=d");
$c = $a + $b;
var_dump($c);
/*output:
array(3) {
["a"]=>
string(5) "apple"
["b"]=>
string(6) "banana"
["c"]=>
string(6) "cherry"
}
*/
<!----> <!---->
$d = $a + $b+$a1;
var_dump($d);
/*output:
array(4) {
["a"]=>
string(5) "apple"
["b"]=>
string(6) "banana"
["c"]=>
string(6) "cherry"
["d"]=>
string(4) "a1=d"
}
*/
?>
<!----> <!---->
5、NULL
PHPmanual关于NULL的描写:"
NULL
特别的 NULL 值暗示一个变量没有值。NULL 类型独一能够的值就是 NULL。
鄙人列情形下一个变量被以为是 NULL:
* 被赋值为 NULL。
* 还没有被赋值。
* 被 unset()。
NULL 类型只要一个值,就是巨细写敏感的关头字 NULL。
"
<!----> <!---->
好凌乱啊,在javascript中还有关头字:var用来声明变量,php没有,美元符号($)前面跟个正当的字符串,一个php的变量就出生了,如上所说,它还没有被赋值,应当被以为是:NULL。利用strlen()试图将其看成string,并算出它的长度,如许做,php引擎不以为是错用。
<?php
if(is_null($none))
print "length=".strlen($none)."\n";//can output:length=0
else
print "undefined variable\n";//can not come here
?>
<?
//PHPmanual申明:(1)is_null --检测变量是不是为 NULL
//(2)NULL 类型只要一个值,就是巨细写敏感的关头字 NULL
<!----> <!---->
$fo=null;
<!----> <!---->
if(is_null($fo))
{//根据上述(2),并不是大写的NULL,本不应履行此处的,实践上并不是如斯,why?
echo "\$fo=null is NULL\n";//output:$fo=null is NULL
}
$foo=NULL;
if (is_null($f)) {
echo "\$f=NULL is also NULL";//out put:$f=NULL is also NULL
}
?>聪明的你,显然已经逐渐的开悟了,慢慢的理解了编程的概念,那么祝贺你,你已经迈出了成功的第一步。 你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。 其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。 对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。 其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎 没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。 本文当是我的笔记啦,遇到的问题随时填充 ,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。 写的比较杂,因为我也是个新手,不当至于大家多多指正。 如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了, 遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。 如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域, ,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。 先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。 这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己 最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。 找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。 其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎 爱上php,他也会爱上你。 微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox支持的不是很好,所以能少用还是少用的好。
页:
[1]