分解数组值并分配给变量

时间:2018-03-15 09:39:31

标签: php

我有一个如此处所示的数组

import React, { Component } from 'react';
import { Select } from 'antd';

const Option = Select.Option;

function handleChange(value) {
  console.log(`selected ${value}`);
}

function handleBlur() {
  console.log('blur');
}

function handleFocus() {
  console.log('focus');
}

export default class SearchBarDemo extends Component {
  render() {
    return (
      <Select
        showSearch
        style={{ width: 200 }}
        placeholder="Select a person"
        optionFilterProp="children"
        onChange={handleChange}
        onFocus={handleFocus}
        onBlur={handleBlur}
        filterOption={(input, option) => option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0}
      >
        <Option value="jack">Jack</Option>
        <Option value="lucy">Lucy</Option>
        <Option value="tom">Tom</Option>
      </Select>
    );
  }
}

我想断开并将数组中的值存储到变量中,如下所示。

25|12|3|53

任何建议都将不胜感激

4 个答案:

答案 0 :(得分:4)

当然有可能:

<?php
$input = [25,12,3,53];
foreach ($input as $key => $val) {
  $varname = 'var' . ($key+1);
  $$varname = $val;
}
var_dump([$var1, $var2, $var3, $var4]);

输出显然是:

array(4) {
  [0]=>
  int(25)
  [1]=>
  int(12)
  [2]=>
  int(3)
  [3]=>
  int(53)
}

答案 1 :(得分:2)

完全按照你的要求行事:

$array = array(25, 'another', 'yet another', 'value');
foreach($array as $index => $value)
{
     ${'variable' . ++$index} = $value;
}

echo $variable1; //shows 25

答案 2 :(得分:0)

您可以使用方括号{ }从变量

创建新变量
foreach ($array as $i => $arr)
{
  ${'variable'.$i+1} = $arr;
}

答案 3 :(得分:0)

如果您有一定数量的元素,那么将数组的元素转换为变量才有意义,因此您可以在代码中使用这组不同的变量。在所有其他情况下,您应该继续使用数组。

因此,这个答案假设你的数组有一组不同的元素。在这种情况下,您可以使用list()将元素转换为变量:

$array = [12, 25, 3, 53];

list($value1, $value2, $value3, $value4) = $array;

echo $value1; // echoes 12
echo $value2; // echoes 25
echo $value3; // echoes 3
echo $value4; // echoes 53

使用PHP 7.1及更高版本,可以使用以下短代码:

$array = [12, 25, 3, 53];

[$value1, $value2, $value3, $value4] = $array;

echo $value1; // echoes 12
echo $value2; // echoes 25
echo $value3; // echoes 3
echo $value4; // echoes 53