我是多维数组的新手
我有一个将数据存储到数组中的表单。
我希望我的用户重用表单并将数据存储到数组。
所以我的想法是一个多维数组,每次使用表单时存储一个新数组。
但我的问题是我不知道如何做到这一点。
这是我的表格:
$customer = '';
$customer .= '<tr><td>customername:<br/><input type="text" name="customer[customername]" value="" /> </td></tr>';
$customer .= '<tr><td>customertitle 1:<br/><input type="text" name="customer[customertitle1]" value="" /> </td></tr>';
$customer .= '<tr><td>customeremail 1:<br/><input type="text" name="customer[customeremail1]" value="" /> </td></tr>';
$customer .= '<tr><td>customertitle 2:<br/><input type="text" name="customer[customertitle2]" value="" /> </td></tr>';
$customer .= '<tr><td>customeremail 2:<br/><input type="text" name="customer[customeremail2]" value="" /> </td></tr>';
echo $customer;
将表单保存在数组中:
if(isset($_POST['Submit'])) {
$customer = $_POST['customer'];
显示的是数组的第一个值:
$customers = array(get_option('customer'));
foreach($customers as $customer){
echo $customer["customername"];
}
我希望这对任何人都有意义!!!!
我明白了
以下是那些想知道的人:首先创建一个函数来获取当前数组。使用update_option 保存表单中的新值function savearray (){
if(isset($_POST['Submit'])) {
// get the option
$customers = get_option( 'customers' );
// add new data to the option
$customers[] = $_POST['customers'];
// save it back to the db
update_option( 'customers', $customers );
}
然后创建一个表单,通过名称
将数据放在数组中<?php
$customers = '';
$customers .= '<tr><td>Name:<br/><input type="text" name="customers[name]" value="" /> </td></tr>';
$customers .= '<tr><td>Contact 1:<br/><input type="text" name="customers[contact1]" value="" /> </td></tr>';
echo $customers;
?>
这行得通....现在是下一步。
我只想显示客户的名称,并创建指向特定客户数据的链接。所以我这样做:
<?php
$customers = get_option('customers');
foreach($customers as $val){
echo '<a href="#">'.$val["name"] . '</a><br>';
}
?>
这告诉我,我想要查看该数组中所有客户的姓名并创建一个链接。我不知道如何针对数组中的特定数据。
任何人? ?
我认为你需要使用ArrayObject
,
<?php
// add a new consumer in your new array
$consumer["name"] = "John Doe";
$consumer["email"] = "toto@yopmail.com";
...
$a = new ArrayObject();
$a->append($consumer)
// for get a consumer in the array
foreach ($arr as $key => $value)
{
// Some instruction
}
?>
希望对你有帮助