dongwen4487 2015-11-10 09:55
浏览 75

在php中为现有数组添加一个键(用于重新排列数组)

I want to rearrange order of an array ($activity_names)

$next_ordernr = 1000;
foreach( $activity_names as $term_id=>$activityarea_name) {
    $onr = $custom_ordernrs[$term_id];
    if ((int)$onr === 0) {$onr = $next_ordernr; $next_ordernr++;}
    $activity_names[$term_id]['reorder']= $onr;
}

I understand how I should do it, but I'm kind of stuck when trying to add a key to an existing array (which should be the easy part ;-)).

I get this warning:

Warning: Illegal string offset 'reorder' in ....

The 'reorder' key does not exist before, but I thought I could like above just to add the key reorder into that existing array.

$next_ordernr = 1000;
foreach( $activity_names as $term_id=>$activityarea_name) {
    $onr = $custom_ordernrs[$term_id];
    if ((int)$onr === 0) {$onr = $next_ordernr; $next_ordernr++;}
    $activity_names[$term_id]= $onr;
}

Works as expected.

I just want to add a key to an existing array. What am I overlooking?

UPDATE $activity_names array could look like this:

$activity_names[24] = 'Activityname1';
$activity_names[36] = 'Activityname2';
$activity_names[14] = 'Activityname3';
$activity_names[54] = 'Activityname4';
$activity_names[104] = 'Activityname5';

UPDATE2 When thinking of it, I am maybe approaching this incorrectly... I want to rearrange order of $activity_names array based on $custom_ordernrs - array

The $activity_names and $custom_ordernrs - array could look like this:

$activity_names[24] = 'Activityname1';
$activity_names[36] = 'Activityname2';
$activity_names[14] = 'Activityname3';
$activity_names[54] = 'Activityname4';
$activity_names[104] = 'Activityname5';

$custom_ordernrs[24] = 5;
$custom_ordernrs[36] = 4;
$custom_ordernrs[14] = 3;
$custom_ordernrs[54] = 2;
$custom_ordernrs[104] = 1;

should result in this order in array:

$activity_names[104] = 'Activityname5';
$activity_names[54] = 'Activityname4';
$activity_names[14] = 'Activityname3';
$activity_names[36] = 'Activityname2';
$activity_names[24] = 'Activityname1';
  • 写回答

2条回答 默认 最新

  • doolo00026 2015-11-10 09:57
    关注
    $activity_names['your_key']= $value;
    
    评论

报告相同问题?

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度