【发布时间】:2012-05-27 01:41:21
【问题描述】:
这是一个与 PHP 相关的问题。
我已经广泛搜索了以下问题的解决方案,但没有找到适合我的解决方案。如果有人可以帮助我,将不胜感激。
我的想法是创建一个登录页面,如果将“特定”预先确定的注册号提供/发送给用户,则访问登录页面并且该号码存在于文件中,执行/允许登录权限。
例如,如果一个用户的注册号是12345,而另一个是123,想先搜索一下用户的号码是否存在,然后做某事()。
因此,如果“123”已经存在,则搜索“12345”与搜索“234”不同,因此它必须找到一个或多个特定数字。
如果有区别,在数字之前和/或之后应该有一个“空格”。
这将在现有文件中。
代码:
<?php
$filename = 'datafile.txt';
// Data file may contain the following number(s) or any other
// 123 (no)
// 1234 (match)
// 12345 (no)
// 123456 (no)
// exact match needed to proceed to page fopen($filename);
$searchfor = '1234';
// this needs to be a variable
// I don't know what the number will be used.
$file = file_get_contents($filename);
if (preg_match($file, $searchfor)) {
echo "Match found. Proceed to the page.";
} else {
echo "Match not found. Try again.";
}
fclose($filename);
?>
谢谢。任何帮助表示赞赏,干杯。
弗雷德
【问题讨论】:
-
您的问题对我来说不是很清楚,但听起来正则表达式可能是提供这种验证的最佳方式。
-
你的问题很不清楚。请改写,以便我们为您提供帮助。
-
可能在该文件中添加带有分隔符的注册号,例如:|||,然后无论何时要检查用户是否存在,都可以打开文件,并使用explode("|||", $文件);你会得到一个包含这些注册号的数组,然后尝试 in_array() 如果它存在,它将返回 true ...
-
这是我一直试图开始工作的代码,它可能会自行解释。
-
问题是,数据存储在 .html 文件中,不会按特定顺序排列。脚本需要在文件中找到确切的出现。
标签: php find exact-match