给数组键值 PHP
Give a values for array keys PHP
$columns = array( 'title', 'client', 'date', 'product', 'status' );
这是打印:
Array
(
[0] => title
[1] => client
[2] => date
[3] => product
[4] => status
)
我想为 $columns 数组赋值,如下所示:
Array
(
[title] => Subject
[client] => Requester
[date] => Requested
[product] => Product
[status] => Status
)
我试着做这样的东西:
$columns['title'] = 'Subject';
$columns['client'] = 'Requester';
$columns['date'] = 'Requested';
$columns['roduct'] = 'Product';
$columns['status'] = 'Status';
但是合并这两个数组并打印它是行不通的:
Array
(
[0] => title
[1] => client
[2] => date
[3] => product
[4] => status
[title] => Subject
[client] => Requester
[date] => Requested
[product] => Product
[status] => Status
)
打印最终结果的代码是这样的:
$columns = array( 'title', 'client', 'date', 'product', 'status' );
$columns['title'] = 'Subject';
$columns['client'] = 'Requester';
$columns['date'] = 'Requested';
$columns['roduct'] = 'Product';
$columns['status'] = 'Status';
$columns = [];
$columns['title'] = 'Subject';
$columns['client'] = 'Requester';
$columns['date'] = 'Requested';
$columns['roduct'] = 'Product';
$columns['status'] = 'Status';
print_r($columns);
你想要一个关联数组
关联数组是具有关联键的数组,例如键的字符串。
创建这些的方法有多种,这里是一种方法:
$columns = [];
$columns['title'] = 'Subject';
$columns['client'] = 'Requester';
$columns['date'] = 'Requested';
$columns['product'] = 'Product';
$columns['status'] = 'Status';
备选方案:
创建数组的简写是使用方括号:
$columns = [
'title' => 'Subject',
'client' => 'Requester',
'date' => 'Requested',
'product' => 'Product',
'status' => 'Status'
];
这将做完全相同的事情,但您使用 array()
而不是 []
:
引用数组
$columns = array(
'title' => 'Subject',
'client' => 'Requester',
'date' => 'Requested',
'product' => 'Product',
'status' => 'Status'
);
如果我理解正确,你想添加这些 data
$data = ['Subject', 'Requester', 'Requested', 'Product', 'Status'];
到您提到的列名称
$columns = array( 'title', 'client', 'date', 'product', 'status' );
所以应该是这样的
$columns = array( 'title', 'client', 'date', 'product', 'status' );
function prepareArray($columns){
$humansTitles = [
'title' => 'Subject',
'client' => 'Requester',
'date' => 'Requested',
'product' => 'Product',
'status' => 'Status'
];
$res = [];
foreach($columns as $col){
$res[$col] = $humansTitles[$col];
}
return $res;
}
print_r(prepareArray($columns));
您似乎在向已有值的数组中添加新的键和值。
如果要创建一个新数组,其中一个数组的值作为键,另一个数组的值作为值,请使用 array_combine。
您也可以重新分配给您的原始数组。
<?php
$columns = array( 'title', 'client', 'date', 'product', 'status' );
$values = array('Subject', 'Requestor', 'Requested', 'Product', 'Status');
$result = array_combine($columns, $values);
var_export($result);
输出:
array (
'title' => 'Subject',
'client' => 'Requestor',
'date' => 'Requested',
'product' => 'Product',
'status' => 'Status',
)
要将值转换为键,您可以使用 array_flip。
$columns = array( 'title', 'client', 'date', 'product', 'status' );
这是打印:
Array
(
[0] => title
[1] => client
[2] => date
[3] => product
[4] => status
)
我想为 $columns 数组赋值,如下所示:
Array
(
[title] => Subject
[client] => Requester
[date] => Requested
[product] => Product
[status] => Status
)
我试着做这样的东西:
$columns['title'] = 'Subject';
$columns['client'] = 'Requester';
$columns['date'] = 'Requested';
$columns['roduct'] = 'Product';
$columns['status'] = 'Status';
但是合并这两个数组并打印它是行不通的:
Array
(
[0] => title
[1] => client
[2] => date
[3] => product
[4] => status
[title] => Subject
[client] => Requester
[date] => Requested
[product] => Product
[status] => Status
)
打印最终结果的代码是这样的:
$columns = array( 'title', 'client', 'date', 'product', 'status' );
$columns['title'] = 'Subject';
$columns['client'] = 'Requester';
$columns['date'] = 'Requested';
$columns['roduct'] = 'Product';
$columns['status'] = 'Status';
$columns = [];
$columns['title'] = 'Subject';
$columns['client'] = 'Requester';
$columns['date'] = 'Requested';
$columns['roduct'] = 'Product';
$columns['status'] = 'Status';
print_r($columns);
你想要一个关联数组
关联数组是具有关联键的数组,例如键的字符串。
创建这些的方法有多种,这里是一种方法:
$columns = [];
$columns['title'] = 'Subject';
$columns['client'] = 'Requester';
$columns['date'] = 'Requested';
$columns['product'] = 'Product';
$columns['status'] = 'Status';
备选方案:
创建数组的简写是使用方括号:
$columns = [
'title' => 'Subject',
'client' => 'Requester',
'date' => 'Requested',
'product' => 'Product',
'status' => 'Status'
];
这将做完全相同的事情,但您使用 array()
而不是 []
:
$columns = array(
'title' => 'Subject',
'client' => 'Requester',
'date' => 'Requested',
'product' => 'Product',
'status' => 'Status'
);
如果我理解正确,你想添加这些 data
$data = ['Subject', 'Requester', 'Requested', 'Product', 'Status'];
到您提到的列名称
$columns = array( 'title', 'client', 'date', 'product', 'status' );
所以应该是这样的
$columns = array( 'title', 'client', 'date', 'product', 'status' );
function prepareArray($columns){
$humansTitles = [
'title' => 'Subject',
'client' => 'Requester',
'date' => 'Requested',
'product' => 'Product',
'status' => 'Status'
];
$res = [];
foreach($columns as $col){
$res[$col] = $humansTitles[$col];
}
return $res;
}
print_r(prepareArray($columns));
您似乎在向已有值的数组中添加新的键和值。
如果要创建一个新数组,其中一个数组的值作为键,另一个数组的值作为值,请使用 array_combine。
您也可以重新分配给您的原始数组。
<?php
$columns = array( 'title', 'client', 'date', 'product', 'status' );
$values = array('Subject', 'Requestor', 'Requested', 'Product', 'Status');
$result = array_combine($columns, $values);
var_export($result);
输出:
array (
'title' => 'Subject',
'client' => 'Requestor',
'date' => 'Requested',
'product' => 'Product',
'status' => 'Status',
)
要将值转换为键,您可以使用 array_flip。