匹配字符串并返回给定字符串的预置编号

时间:2013-06-25 13:15:10

标签: php

我陷入困境。

Accutally在php(用户名,密码)中的表单中,我想为每个用户名设置密码。意味着

if($fh == "Harry") {
$password = "123456";
}

可以轻松创建。但问题是我有500多个用户名。所以我不可能通过给定的方法设置每个用户名的密码。

关于我的朋友,通过这种方法创造了这个。我发现他的用户名密码是由这种类型设置的。

"Harry":"12345","Biswas":"789456","garry":"56894"

所以我想创造,像这样。 所以请告诉我。我该如何创建呢?

2 个答案:

答案 0 :(得分:3)

为您的数据创建一个查找数组:

$str = '"Harry":"12345","Biswas":"789456","garry":"56894"';

$passwords = array();
foreach( str_getcsv( $str) as $entry) {
    list( $name, $pw) = explode( ':', $entry);
    $passwords[$name] = $pw;
}

然后,只需使用他们的名字作为密钥来找到他们的密码:

$fh = "Harry";
echo $passwords[$fh]; // 12345

答案 1 :(得分:2)

假设您的数据文件如下"Harry":"12345","Biswas":"789456","garry":"56894" 数据文件名为userpass.txt

 $data = file_get_contents("userpass.txt");
 $records = explode(",", $data);

 foreach ($records as $record) {
    $record = preg_replace('/"/', "", $record);
    $userpass = explode(":", $record);

    //DO YOUR SQL STATMENT HERE

    $sql = "INSERT INTO user (username, `password`) VALUES ('" . $userpass[0] . "','" . $userpass[1] . "')";
    //execute query
 }