十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
如果要在某个数组中删除一个元素,可以直接用的unset,例子代码:
创新互联公司服务紧随时代发展步伐,进行技术革新和技术进步,经过十载的发展和积累,已经汇集了一批资深网站策划师、设计师、专业的网站实施团队以及高素质售后服务人员,并且完全形成了一套成熟的业务流程,能够完全依照客户要求对网站进行成都网站建设、成都网站制作、建设、维护、更新和改版,实现客户网站对外宣传展示的首要目的,并为客户企业品牌互联网化提供全面的解决方案。
?php
$arr
=
array('a','b','c','d');
print_r($arr);
unset($arr[1]);
print_r($arr);
?
以上代码输出的结果如下:
E:\TEMP\文件\expa.phpArray(
[0]
=
a
[1]
=
b
[2]
=
c
[3]
=
d)Array(
[0]
=
a
[2]
=
c
[3]
=
d)
MySQL为我们提供了delete和truncate语句来删除数据。
delete 语句的定义:
删除数据的时候用的大多都是 delete 语句。现在让我们来看一下 delete语句的定义。
DELETE [LOW_PRIORITY] [QUICK] [IGNORE] FROM tbl_name
[WHERE where_definition]
[ORDER BY ...]
[LIMIT row_count]
delete from friends where user_name = 'simaopig';
delete 注意事项:
从语法结构中,我们就可以看出,和 update 语法一样,我们是可以省略 where 子句的。不过这是一个很危险的行为。因为如果不指定 where 子句,delete 将删除表中所有的记录,而且是立即删除.
truncate 语句的简单说明:
这个语句之前我也没有接触过,也没有使用过。因为一般情况下,删除数据大家都在使用delete语句。其实这个truncate 命令很简单,它的意思是:删除表的所有记录。相当于 delete 语句不写 where 子句一样。其语法结构为:
TRUNCATE [TABLE] tbl_name
这里简单的给出个示例,我想删除 friends 表中所有的记录,可以使用如下语句:
truncate table friends;
truncate 和 delete的效率问题:
如果想要删除表的所有数据,truncate语句要比 delete 语句快。因为 truncate 删除了表,然后根据表结构重新建立它,而 delete 删除的是记录,并没有尝试去修改表。这也是为什么当向一个使用 delete 清空的表插入数据时,MySQL 会记住前面产生的AUTOINCREMENT序列,并且继续利用它对AUTOINCREMENT字段编号。而truncate删除表后,表是从1开始为autoincrement字段编号。
不过truncate命令快规快,却不像delete命令那样对事务处理是安全的。因此,如果我们想要执行truncate删除的表正在进行事务处理,这个命令就会产生退出并产生错误信息。
?php
//这是在数据库取出的01数据
$string = "7,12,541";
//把01的数据转为数组
$string_to_array = explode(",", $string);
//转换数组,默认数组的键值对是类似这样
//array(0=7,1=12,2=541);
//转换后是array(7=0,12=1,541=2);
$arr_flip = array_flip($string_to_array);
//删除为7的
$delete_mark = 7;
unset($arr_flip[$delete_mark]);
//数组再转回来
$string_to_array = array_flip($arr_flip);
//数组合成字符串
$string_end = implode(",", $string_to_array);
var_dump($string_end);
上面代码和注释都写好了,主要是这部分处理,取出数据应该不难吧
array_splice函数可以删除数组中的元素(只是该函数的功能之一),array_splice用法如下:
array_splice — 把数组中的一部分去掉并用其它值取代
array array_splice( array $input, int $offset[, int $length = 0 [, mixed $replacement ]] )
把 input 数组中由offset 和 length指定的单元去掉,如果提供了 replacement 参数,则用其中的单元取代。
input:输入的数组。
offset:如果 offset 为正,则从 input数组中该值指定的偏移量开始移除。如果 offset为负,则从 input 末尾倒数该值指定的偏移量开始移除。
length:如果省略 length,则移除数组中从offset到结尾的所有部分。
如果指定了 length并且为正值,则移除这么多单元。
如果指定了 length并且为负值,则移除从 offset 到数组末尾倒数length 为止中间所有的单元。
小窍门:当给出了replacement 时要移除从 offset到数组末尾所有单元时,用count($input) 作为 length。
replacement:如果给出了 replacement 数组,则被移除的单元被此数组中的单元替代。
示例,删除数组$inputArr的第5~10个元素(从0开始数,包括第5个和第10个,共6个元素)
array_splice($inputArr,5,6);
1、创建userinfo_update.php,用于查询用户信息,先显示信息,在修改:先通过GET获取用户编号查询用户信息:$sql = "select * from user_info where user_id='".$_GET['userId']."'"; $result = mysql_query($sql,$con);if($row = mysql_fetch_array($result)){}。
2、页面效果。
3、创建update.php,用于修改用户信息:使用到了mysql_affected_rows() 函数返回前一次 MySQL 操作所影响的记录行数。//通过post获取页面提交数据信息$userId = $_POST[userId];
$userName = $_POST[userName];$userAge = $_POST[userAge];
4、$sql = "update user_info set user_name='".$userName."',user_age=".$userAge." where user_id='".$userId."'";mysql_query($sql,$conn);//执行SQL$mark = mysql_affected_rows();//返回影响行数$url = "userinf_select.php"; 。
5、运行结果。
//删除是记录是用sql语句,比如 delete from xxx(table) where id=1 删除 id=1的记录
//数据库操作后,手动关闭是好得习惯,不手动关闭,php程序也会最后自动关闭