【发布时间】:2016-11-23 22:21:21
【问题描述】:
我目前已完成所有代码以按一个关键字进行过滤,但我想按 100 多个关键字进行过滤。我对PHP的经验不够,所以我尝试过,但失败了。
这是我当前的代码,但我想修改它以使用多个关键字。
function postResolve ($key) {
return isset($_POST[$key]) ? $_POST[$key] : null;
}
$formData = [
'keyword' => postResolve('keyword'),
'text' => postResolve('text')
];
if (is_null($formData['keyword']) || is_null($formData['text'])) {
return 'Nothing to do... Missing text or keyword.';
}
$text = explode(PHP_EOL, $formData['text']);
$storage = [];
foreach ($text as $sentence) {
if (strpos($sentence, $formData['keyword']) !== false) {
$storage[] = trim($sentence);
}
}
echo json_encode($storage);
如果有人可以帮助我进行此更改,将不胜感激:)
【问题讨论】:
-
如果您使用的是 PHP 7,
isset($_POST[$key]) ? $_POST[$key] : null等于$_POST[$key] ?? null -
我不能 100% 确定 PHP 是我迄今为止最讨厌的语言,我有一个朋友为我做这件事。我刚刚修改它以使用引导程序。
-
您可以使用 in_array 并将 100 多个关键字放在大海捞针中。
-
您是如何获得多个关键字的?它们在数组中吗?
-
@Dzje 我不确定这是从哪里来的,PHP 被至少 50% 的网络服务器使用,并且被许多流行的网站使用。