Php 如何将数组转换为变量
我希望将数组中的每个值保存在变量中,并根据它们的变量名打印出这些值 我的代码Php 如何将数组转换为变量,php,Php,我希望将数组中的每个值保存在变量中,并根据它们的变量名打印出这些值 我的代码 $arr = "PRE;OS0101001;123456;ATAKUMOSA EAST;IWARA;TOWN HALL IWARA;Yes;NGNOS10001;1000;5;Yes;10234OS;Yes;785;;2018-08-26 06:59:35"; $delimiter = array(",",".","'","\"","|","\\","/",";",":"); $replace = str_repla
$arr = "PRE;OS0101001;123456;ATAKUMOSA EAST;IWARA;TOWN HALL IWARA;Yes;NGNOS10001;1000;5;Yes;10234OS;Yes;785;;2018-08-26 06:59:35";
$delimiter = array(",",".","'","\"","|","\\","/",";",":");
$replace = str_replace($delimiter, $delimiter[0], $arr);
$explode = explode($delimiter[0], $replace);
print_r($explode);
因此:
Array
(
[0] => PRE
[1] => OS0101001
[2] => 123456
[3] => ATAKUMOSA EAST
[4] => IWARA
[5] => TOWN HALL IWARA
[6] => Yes
[7] => NGNOS10001
[8] => 1000
[9] => 5
[10] => Yes
[11] => 10234OS
[12] => Yes
[13] => 785
[14] =>
[15] => 2018-08-26 06
[16] => 59
[17] => 35
)
我想用这种格式打印出来
$officer_id = $array[1];
$userpassword = $array[2];
等等
我怎么做
谢谢 由于字符串看起来像csv行,因此可以使用
str\u getcsv
更轻松地解析它
$array = str_getcsv($arr,";","");
您可以始终使用list
将分解结果分配给各个变量
list( ,$officer_id, $password, $sthg, $alsoSthg ) = explode($delimiter[0], $replace);
或者如果您使用了str\u getcsv
list( ,$officer_id, $password, $sthg, $alsoSthg ) = $array;
您可以增加
列表
中的变量数量,只要您确定它在数组中有对应关系。请注意,我故意将列表中的第一个参数保留为空,以表明如果不想将该参数指定给变量,可以将该参数(或任何其他)保留为空 那么您正试图输出一个PHP代码的结果?为什么不直接使用序列化呢?还有var_导出。@Ultimater,是的,我是。如果我知道怎么做,我就不会问了。你能告诉我吗?echo“\$officer\u id=”.$array[1]有什么问题代码>等等,或者进一步澄清……如果这是一个CSV文件(看起来就是这样),它包含一个头,那么就构建一个关联数组(通过数组\u combine
)而不是一打局部变量。//分隔符重写的目的也完全不清楚。@mario我同意assoc数组的想法-但不确定她的$arr是否是一次性的,考虑到这个问题,硬编码可能更容易。这是来自twilio的短信。我还可以使用str_getcsv吗?这里的键看起来是这样的,你可以用str_getcsv
解析这一行。