一、php写一个多维数组排序函数
在实际开发中,我们往往需要对多维数组进行排序,如订单列表按时间排序等。以下是一个示例多维数组:
```
$orders = array(
array('id'=>1, 'name'=>'John', 'price'=>100),
array('id'=>2, 'name'=>'Kathy', 'price'=>200),
array('id'=>3, 'name'=>'Anna', 'price'=>150),
array('id'=>4, 'name'=>'Peter', 'price'=>120)
);
```
要对这个多维数组按价格从低到高排序,可以使用usort函数来实现:
```
function cmp($a, $b) {
return $a['price'] - $b['price'];
}
usort($orders, 'cmp');
```
上面的代码中,定义了一个cmp函数,将多维数组按价格升序排序。然后使用usort函数对$orders数组进行排序。
二、php中使用函数控制表格行列
在实际开发中,经常需要对表格进行操作,如增加、删除、修改、排序等。以下是一个示例表格:
```
ID | Name | Price |
---|---|---|
1 | John | 100 |
2 | Kathy | 200 |
3 | Anna | 150 |
4 | Peter | 120 |
```
要对表格进行操作,可以使用以下函数:
1. 添加行
要添加新行,可以使用HTML代码来添加,如下所示:
```
$table .= '
```
上面的代码中,使用点号将HTML代码添加到$table变量中,这样就可以添加新行了。
2. 删除行
要删除行,可以使用JavaScript代码来实现。首先,为表格每行添加一个删除按钮,如下所示:
```
foreach ($data as $row) {
$table .= '
$table .= '
$table .= '
$table .= '
$table .= '
$table .= '
}
```
上面的代码中,为每行添加了一个删除按钮,并设置了href属性为JavaScript代码,调用removeRow函数。
然后,写一个removeRow函数来删除行:
```
function removeRow(row) {
row.parentNode.parentNode.remove();
}
```
上面的代码中,获取点击按钮所在行的父节点的父节点,即
3. 修改行
要修改行,可以使用JavaScript代码来实现。首先,为表格每行添加一个编辑按钮,如下所示:
```
foreach ($data as $row) {
$table .= '
$table .= '
$table .= '
$table .= '
$table .= '
$table .= '
}
```
上面的代码中,为每行添加了一个编辑按钮,并设置了href属性为JavaScript代码,调用editRow函数。
然后,写一个editRow函数来修改行:
```
function editRow(row) {
var cells = row.parentNode.parentNode.cells;
var id = cells[0].textContent;
var name = cells[1].textContent;
var price = cells[2].textContent;
document.getElementById('id').value = id;
document.getElementById('name').value = name;
document.getElementById('price').value = price;
}
```
上面的代码中,获取点击按钮所在行的父节点的父节点,即
4. 表格排序
要对表格进行排序,可以使用以下代码:
```
function sortTable(n) {
var table, rows, switching, i, x, y, shouldSwitch;
table = document.getElementById("myTable");
switching = true;
while (switching) {
switching = false;
rows = table.rows;
for (i = 1; i < (rows.length - 1); i++) {
shouldSwitch = false;
x = rows[i].getElementsByTagName("td")[n];
y = rows[i + 1].getElementsByTagName("td")[n];
if (isNaN(x.innerHTML) || isNaN(y.innerHTML)) {
if (x.innerHTML.toLowerCase() > y.innerHTML.toLowerCase()) {
shouldSwitch= true;
break;
}
} else {
if (Number(x.innerHTML) > Number(y.innerHTML)) {
shouldSwitch= true;
break;
}
}
}
if (shouldSwitch) {
rows[i].parentNode.insertBefore(rows[i + 1], rows[i]);
switching = true;
}
}
}
```
上面的代码中,使用了冒泡排序算法来对表格进行排序。其中,n表示要排序的列索引,从0开始。如果要升序排序,将shouldSwitch= true改为shouldSwitch = false即可。
总结:
以上就是php中使用函数控制表格行列的一些基本操作,包括添加行、删除行、修改行、表格排序等。这些操作可以使表格更加灵活方便地进行操作。同时,要注意写JavaScript代码时的变量作用域问题。 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.37seo.cn/
发表评论 取消回复