This is a collection of questions that come up every now and then about syntax in PHP. This is also a Community Wiki, so everyone is invited to participate in maintaining this list.
It used to be hard to find questions about operators and other syntax tokens.¹
The main idea is to have links to existing questions on Stack Overflow, so it's easier for us to reference them, not to copy over content from …
如何通过"order"键的值对此数组进行排序?尽管这些值目前是连续的,但它们并不总是如此.
Array
(
[0] => Array
(
[hashtag] => a7e87329b5eab8578f4f1098a152d6f4
[title] => Flower
[order] => 3
)
[1] => Array
(
[hashtag] => b24ce0cd392a5b0b8dedc66c25213594
[title] => Free
[order] => 2
)
[2] => Array
(
[hashtag] => e7d31fc0602fb2ede144d18cdffd816b
[title] => Ready
[order] => 1
)
)
Run Code Online (Sandbox Code Playgroud) 给定这个数组:
$inventory = array(
array("type"=>"fruit", "price"=>3.50),
array("type"=>"milk", "price"=>2.90),
array("type"=>"pork", "price"=>5.43),
);
Run Code Online (Sandbox Code Playgroud)
我想按价格排序$inventory
元素得到:
$inventory = array(
array("type"=>"pork", "price"=>5.43),
array("type"=>"fruit", "price"=>3.50),
array("type"=>"milk", "price"=>2.90),
);
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
我将CSV数据加载到多维数组中.这样,每个"行"都是一个记录,每个"列"包含相同类型的数据.我正在使用下面的函数加载我的CSV文件.
function f_parse_csv($file, $longest, $delimiter)
{
$mdarray = array();
$file = fopen($file, "r");
while ($line = fgetcsv($file, $longest, $delimiter))
{
array_push($mdarray, $line);
}
fclose($file);
return $mdarray;
}
Run Code Online (Sandbox Code Playgroud)
我需要能够指定要排序的列,以便重新排列行.其中一列包含格式为的日期信息,Y-m-d H:i:s
我希望能够以最近的日期为第一行进行排序.
这是一个一般参考问题和答案,涵盖了许多永无止境的"如何访问我的JSON中的数据?" 的问题.它可以处理在PHP中解码JSON和访问结果的广泛基础知识.
我有JSON:
{
"type": "donut",
"name": "Cake",
"toppings": [
{ "id": "5002", "type": "Glazed" },
{ "id": "5006", "type": "Chocolate with Sprinkles" },
{ "id": "5004", "type": "Maple" }
]
}
Run Code Online (Sandbox Code Playgroud)
如何在PHP中解码并访问结果数据?
可能重复:
如何在PHP中对数组和数据进行排序?
如何在
PHP中排序多维数组PHP排序数组按SubArray值PHP 按值
排序多维数组
我的数组看起来像:
Array(
[0] => Array(
[name] => Bill
[age] => 15
),
[1] => Array(
[name] => Nina
[age] => 21
),
[2] => Array(
[name] => Peter
[age] => 17
)
);
Run Code Online (Sandbox Code Playgroud)
我想根据他们的名字按字母顺序对它们进行排序.我看到PHP排序数组按SubArray值,但它没有多大帮助.任何想法如何做到这一点?
我有这种格式的数组:
Array
(
[0] => Array
(
[text] => tests
[language] =>
[advertiserCompetitionScale] => 5
[avgSearchVolume] => 7480000
[lastMonthSearchVolume] => 9140000
)
[1] => Array
(
[text] => personality tests
[language] =>
[advertiserCompetitionScale] => 5
[avgSearchVolume] => 165000
[lastMonthSearchVolume] => 201000
)
[2] => Array
(
[text] => online tests
[language] =>
[advertiserCompetitionScale] => 5
[avgSearchVolume] => 246000
[lastMonthSearchVolume] => 301000
)
)
Run Code Online (Sandbox Code Playgroud)
如何按avgSearchVolume
字段的降序排列该格式的数组?这有内置功能吗?
我有一个如下数组:
Array ( [0] => Array ( 'name' => "Friday" 'weight' => 6 ) [1] => Array ( 'name' => "Monday" 'weight' => 2 ) )
我想获取该数组中的最后一个值('weight'),并使用它来对主数组元素进行排序.所以,在这个数组中,我想对它进行排序,以便'Monday'元素出现在'Friday'元素之前.
我正在尝试根据特定的密钥对我的PHP哈希表进行排序.数据结构如下所示:
print_r($mydata);
Array(
[0] => Array
(
[type] => suite
[name] => A-Name
)
[1] => Array
(
[type] => suite
[name] => C-Name
)
[2] => Array
(
[type] => suite
[name] => B-Name
)
)
Run Code Online (Sandbox Code Playgroud)
我尝试过ksort,sort,usort但似乎没什么用.我正在尝试根据名称键排序两级下来.
这是我尝试使用usort:
function cmp($a, $b) {
return $b['name'] - $a['name'];
}
usort($mydata, "cmp");
Run Code Online (Sandbox Code Playgroud)
有没有一种简单的方法可以做到这一点,还是我需要编写自定义排序功能?
我需要在PHP中进行冒泡排序算法.
我想知道是否有任何一个我可以使用的好例子,或者是一个可以做到这一点的开源库.
我在一个集合(数组)中有一些空格,我想用对象(一个人)填充这些空间,所以没有空间可以有男性和女性,这就是为什么我试图找出一个冒泡排序算法.
我的计划是填写任何可用的空间,无论性别如何,然后分别对它们进行排序.
谢谢.