PHP网站制作之进修利用PHP数组
熟悉HTML/CSS/JS等网页基本元素,完成阶段可自行制作完整的网页,对元素属性达到熟悉程度数组 PHP4.0中共有超越30个新的数组相干函数。个中良多通用函数答应你反省给定命组中是不是存在特定对象、对数组元素计数、增添或删除元素,或对元素排序。假如你有很大的一个数组,而所要完成的仅是找出一个存在的给定值,你可使用in_array()以前往true 或 false。以下代码将输入“Not found in this array”――由于你将在$namesArray中寻觅一个其实不存在的“Alber ”。
<? $namesArray = array("Joe", "Jane", "Bob", "Mary", "Paul", "Eddie", "John");
$lookingFor = "Albert";
if (in_array($lookingFor, $namesArray)) {
echo "You've found it!";
} else {
echo "Not found in this array!";
}
?>
假如你改动了$lookingFor的值,将其变成“Mary”,你将失掉动静“You've found it!”――由于“Mary”是$namesArray的一局部。
假如但愿对数组元素计数,你可使用count()函数:
<? $namesArray = array("Joe", "Jane", "Bob", "Mary", "Paul", "Eddie", "John");
$count = count($namesArray); ?>
$count值将为7。
你可以对任何数组添加元素,不管是在已存在数组的入手下手或末尾。你也能够利用函数以创立一个包括两个或多个数组元素的新数组。兼并时每一个数组将按需求的按次分列。假如你的数组已有外部的排序,你需求对新的兼并数组重排序。
让咱们从对已存在数组的末尾增加元素入手下手,利用函数array_push():
<? /* 创立原始数组 */
$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");
/* 到场到原始数组中 */
array_push($fruitArray, "grape", "pineapple", "tomato");
/* 经由过程其键值列出每一个元素*/
while (list($key,$value) = each($fruitArray)) {
echo "$key : $value<br>";
}
?>
这将显示:
0 : apple
1 : orange
2 : banana
3 : kiwi
4 : pear
5 : grape
6 : pineapple
7 : tomato
当你需求对数组开首添加元素时,代码十分相似。分歧处只是函数名:array_unshift() 而不是array_push()。
<?
<? /* 创立原始数组 */
$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");
/* 到场到原始数组中 */
array_unshift($fruitArray, "grape", "pineapple", "tomato");
/* 经由过程其键值列出每一个元素*/
while (list($key,$value) = each($fruitArray)) {
echo "$key : $value<br>";
}
?>
这将显示:
0 : grape
1 : pineapple
2 : tomato
3 : apple
4 : orange
5 : banana
6 : kiwi
7 : pear
函数array_merge()兼并两个或更多的数组。
<? /* 创立原始数组 */
$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");
<? /* 创立第二个数组 */
$vegArray = array("carrot", "green beans", "asparagus", "artichoke", "corn");
/* 兼并为一个数组 */
$goodfoodArray = array_merge($fruitArray, $vegArray);
/* 经由过程其键值列出每一个元素*/
while (list($key,$value) = each($goodfoodArray)) {
echo "$key : $value<br>";
}
?>
这将显示:
0 : apple
1 : orange
2 : banana
3 : kiwi
4 : pear
5 : carrot
6 : green beans
7 : asparagus
8 : artichoke
9 : corn
如今已对数组停止了增添元素和兼并,如今来实习删除元素函数。你可使用函数array_pop()从一数组末尾删除一个元素。假如利用函数array_shift(),则从一数组开首删除一个元素。而实践受骗你从数组删除元素时,此元素对你而言依然可用――当你从已存在的数组中对元素停止pop 或 shift时。
利用array_pop()函数从数组末尾删除一个值:
<?
/* 创立一数组*/
$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");
/* 在末尾弹出某值 */
$popped = array_pop($fruitArray);
/* 列出新数组内容,和弹出的值*/
while (list($key,$value) = each($fruitArray)) {
echo "$key : $value<br>";
}
echo "<br>and finally, in $popped: $popped";
?>
这将显示:
0 : apple
1 : orange
2 : banana
3 : kiwi
and finally, in $popped: pear
Next, delete an element from the end of an array: ???????????
上面,从数组末尾删除某值:
<?
/* 创立一数组*/
$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");
/* 从数组头部移出某值 */
$shifted = array_shift($fruitArray);
/* 列出新数组的内容和移出的值*/
while (list($key,$value) = each($fruitArray)) {
echo "$key : $value<br>";
}
echo "<br>and finally, in $shifted: $shifted";
?>
这将显示:
0 : orange
1 : banana
2 : kiwi
3 : pear
and finally, in $shifted: apple
有良多函数可以匡助你对数组元素排序。但我将会演示根基的排序以匡助你懂得其进程:
<? /* 创立原始数组 */
$fruitArray = array("apple", "orange", "banana", "kiwi", "pear");
/* 排序 */
sort($fruitArray);
/* 对其重设以准确从头至尾显示数组 */
/* 经由过程其键值列出每一个元素*/
while (list($key,$value) = each($fruitArray)) {
echo "$key : $value<br>";
}
?>
这将显示:
0 : apple
1 : banana
2 : kiwi
3 : orange
4 : pear
学习如何将PHP与HTML结合起来完成简单动态页面 首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。 小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。 在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、 当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标, 如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了, ,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。 你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。 我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。 学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。 在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。 基础有没有对学习php没有太大区别,关键是兴趣。 至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。 没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。 学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。 其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。 曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线\\\\\\\'_\\\\\\\' ; 基础有没有对学习php没有太大区别,关键是兴趣。 本文当是我的笔记啦,遇到的问题随时填充 我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
页:
[1]