gpt4 book ai didi

php - 使用全名搜索,而不仅仅是名字或姓氏

转载 作者:行者123 更新时间:2023-12-04 06:15:06 24 4
gpt4 key购买 nike

我正在开发一个用 PHP 和 Codeigniter 构建的 API,我使用 MySQL 作为数据库。

我有一个名为 Users 的用户表,其中包含以下列:

- ID
- Firstname
- Lastname
- Email

用户如何使用全名搜索此表?例如,它可以按 Martin 或 Smith 搜索,但不能按 Martin Smith 搜索。

这是我现在使用的查询:
$this->db->select('*');
$this->db->from('users');
$this->db->like('firstname', $args['query']);
$this->db->or_like('lastname', $args['query']);

更新

如果我按照下面的建议使用这个查询,我找不到任何东西。没有全名、名字或姓氏。那么名字和姓氏都需要是同一个词。
$this->db->select('*');
$this->db->from('users');
$this->db->like('firstname', $args['query']);
$this->db->like('lastname', $args['query']);

最佳答案

直接从我的脑海中消失,但是呢

$input = 'Martin Smith';

$names = explode($input);

$this->db->select('*');
$this->db->from('users');
$this->db->where_in('firstname', $names);
$this->db->or_where_in('lastname', $names);

应该输出类似:
SELECT * FROM users 
WHERE firstname IN ('Martin', 'Smith')
OR lastname IN ('Martin', 'Smith')

关于php - 使用全名搜索,而不仅仅是名字或姓氏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7349619/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com