首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >unset( )不工作PHP

unset( )不工作PHP
EN

Stack Overflow用户
提问于 2013-10-23 08:57:07
回答 4查看 28.2K关注 0票数 13

我尝试过许多不同的方法,但是我无法从数组中取消一个变量。我从一个字符串开始,然后把它炸成一个数组,现在我想删除Bill。我我错过了什么吗?我去过php.net和我,还困在.

代码语言:javascript
复制
<!DOCTYPE html>
<html>
<head>
<title></title>

</head>
<body>

<?php


$names = "Harry George Bill David Sam Jimmy";

$Allname = explode(" ",$names);

unset($Allname['Bill']);

sort($Allname);

$together = implode("," ,$Allname);

echo "$together";
?>
</body>
</html>   
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-10-23 08:59:39

这是因为'Bill‘是数组条目的值,而不是索引。你想做的是

代码语言:javascript
复制
unset($Allname[2]); //Bill is #3 in the list and the array starts at 0.

或者看这个问题,以获得更详细和更好的答案:

PHP array delete by value (not key)

票数 18
EN

Stack Overflow用户

发布于 2013-10-23 08:59:53

因为未设置的期望键而不是值。

账单是你的价值。

代码语言:javascript
复制
unset($Allname[2])

爆炸后,阵列看起来像:

代码语言:javascript
复制
array (

0 => 'Harry',
1 => 'George',
2 => 'Bill',
...
)
票数 1
EN

Stack Overflow用户

发布于 2013-10-23 09:04:07

unset($arr['key'])取消密钥。你的钥匙是01等,不是比尔。

如果要删除"Bill“值,最简单的方法是:

代码语言:javascript
复制
$names            = 'Harry George Bill David Sam Jimmy';
$namesArray       = explode(' ', $names);
$namesWithoutBill = array_diff($namesArray, array('Bill'));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19537228

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档