Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从字符串生成数组_Php - Fatal编程技术网

Php 从字符串生成数组

Php 从字符串生成数组,php,Php,我已从服务中检索到以下输出 输出: 确定:设置用户名确定:设置密码确定:设置服务器状态获取网络确定:登录确定:获取组成员组联系人列表联系人5551000008539姓名“驱动程序2”状态脱机组联系人列表联系人5551000008540姓名“驱动程序3”状态脱机组联系人列表联系人5551000008541姓名“驱动程序4”状态脱机状态连接客户端自身id 5551000008535客户端自身id 0客户端自身id 5551000008535状态断开登录被拒绝身份验证错误客户端自身id 0状态脱机 如

我已从服务中检索到以下输出

输出:

确定:设置用户名确定:设置密码确定:设置服务器状态获取网络确定:登录确定:获取组成员组联系人列表联系人5551000008539姓名“驱动程序2”状态脱机组联系人列表联系人5551000008540姓名“驱动程序3”状态脱机组联系人列表联系人5551000008541姓名“驱动程序4”状态脱机状态连接客户端自身id 5551000008535客户端自身id 0客户端自身id 5551000008535状态断开登录被拒绝身份验证错误客户端自身id 0状态脱机

如何像以前一样将数据提取到用户数组中

我如何将分解/内爆/预匹配或其他内容分解成一个用户数组。比如:

$users - Driver 2 => 5551000008539
         Driver 3 => 5551000008540
         Driver 4 => 5551000008541
试试这个(假设
$s
包含我们服务的输出):

要创建名称为键、数字为值的数组,请执行以下操作:

$result = array_combine($out[2], $out[1]);

您可能需要发布输入字符串(包括换行符)的确切格式以获得有效答案。可能“:”是分隔符。但是在我回答这个问题之前需要澄清。警告:array_combine()[function.array combine]:这两个参数至少应该有1个元素Assign
$s='OK:设置用户名OK:设置密码OK:设置服务器状态获取网络OK:登录OK:获取组成员组联系人列表联系人5551000008539姓名“驱动程序2”状态脱机组联系人列表联系人5551000008540姓名“驱动程序3”状态脱机组联系人列表联系人5551000008541姓名“驱动程序4”状态脱机状态连接客户端自身id 5551000008535客户端自身id 0客户端自身id 5551000008535状态断开登录拒绝身份验证错误客户端自身id 0状态脱机'刚得到2个空数组。。数组()数组()
preg_match_all("/contact-list contact (\\d+) name \"(.*?)\"/", $s, $out, PREG_PATTERN_ORDER);
$result = array_combine($out[2], $out[1]);