热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何往php函数中传入不定数量的参数?

php函数中传入不定数量的参数最简单的方法是传入一个数组,数组值的个数是可以不限制数量的

如何往php函数中传入不定数量的参数?

我觉得方法有两种

  • 数组方式传值

  • 函数内通过func_get_args来获取值


最简单的方法是传入一个数组,数组值的个数是可以不限制数量的

另外一个方法是使用func_get_args来获取参数


function args($sql) {
    $args = func_get_args();
    array_shift($args);
    var_dump($sql);
    // 'All arguments in one array' syntax
    if (isset($args[0]) and is_array($args[0])) { 
        $args = $args[0];
    }
    var_dump($args);
}
 
args($sql = 1,$query = 3,$db = 'lee');
args(array('sql' => 1,'query' => 3,'db' => 'lee'));
传入的参数打印结果如下

int(1)
array(2) {
  [0]=>
  int(3)
  [1]=>
  string(3) "lee"
}
array(3) {
  ["sql"]=>
  int(1)
  ["query"]=>
  int(3)
  ["db"]=>
  string(3) "lee"
}
array(0) {
}


推荐阅读
  • 本文详细介绍了 PHP 中 `sprintf` 函数的使用方法,并通过具体示例进行说明。例如,使用 `%%` 作为参数时,`%%` 会被替换为 `%`。通过 `echo sprintf($str)` 可以验证这一行为,返回的结果是“测试一下 % 这个参数,会被替换成什么”。此外,文章还探讨了 `sprintf` 函数在格式化字符串中的多种应用场景,包括数字格式化、日期时间处理等,帮助读者全面掌握该函数的使用技巧。 ... [详细]
  • 如何调整笔记本电脑触摸板的灵敏度以提升使用体验
    如何优化笔记本电脑触摸板的灵敏度以提升使用体验?本文将详细介绍如何通过系统设置和第三方软件来调整触摸板的灵敏度,从而提高操作流畅性和精准度,使用户在日常使用中更加得心应手。 ... [详细]
  • 润乾报表JNDI配置异常分析与解决方法
    在使用润乾报表时,通过JNDI连接数据源是常见的配置方式。本文详细分析了JNDI配置异常的原因,并提供了具体的解决方法。重点讨论了JNDI名称在三个关键位置的配置:1. Tomcat或应用服务器的数据源配置(以Tomcat为例);2. 润乾报表中的数据源配置;3. 应用程序代码中的JNDI名称引用。通过这些步骤,可以有效解决JNDI配置异常问题,确保报表系统的稳定运行。 ... [详细]
  • Java 点餐系统源代码附带管理后台(免费提供)
    本项目提供了一套基于 Java 的点餐系统,包括前端小程序和后端管理平台。采用 Spring Boot 和 SSM 框架,结合 MySQL 和 Redis 数据库技术,适用于学习和二次开发。有需要源代码的开发者可以通过私信联系,免费获取下载链接。 ... [详细]
  • 在SQL Server 2008数据库迁移过程中,备份方法是一种高效且可靠的导出手段。本文详细介绍了如何利用备份功能实现数据的快速迁移,并提供了具体的步骤和注意事项,适合Golang程序员和数据库管理员参考。 ... [详细]
  • SQLite数据库CRUD操作实例分析与应用
    本文通过分析和实例演示了SQLite数据库中的CRUD(创建、读取、更新和删除)操作,详细介绍了如何在Java环境中使用Person实体类进行数据库操作。文章首先阐述了SQLite数据库的基本概念及其在移动应用开发中的重要性,然后通过具体的代码示例,逐步展示了如何实现对Person实体类的增删改查功能。此外,还讨论了常见错误及其解决方法,为开发者提供了实用的参考和指导。 ... [详细]
  • 在实际开发中,连接池是最常使用的数据库管理技术之一。连接池通过创建和管理一组预初始化的数据库连接,使得这些连接可以被多个线程复用,从而显著提高应用程序的性能和资源利用率。本文将详细介绍如何从零开始构建一个自定义的 MySQL 连接池,并将其与 Spring Data 进行集成,以实现高效、可靠的数据库操作。 ... [详细]
  • 为了在 Oracle 中实现将多个绑定变量一次性插入到查询语句的 WHERE 子句中,可以利用 SQL 的字符串处理功能将输入的字符串转换为行集,并将其作为普通联接的输入。例如,可以通过定义一个 VARCHAR2 类型的变量 `acct` 来存储绑定变量的值,然后使用动态 SQL 执行查询。这种方法不仅提高了查询的灵活性,还简化了多条件筛选的实现。 ... [详细]
  • 通过利用下降沿触发的JK触发器,可以设计出同步的二分频和四分频电路。具体而言,该方法通过精确控制触发器的状态转换,实现对输入时钟信号的有效频率分割。这种设计不仅能够确保时序的同步性,还能提高电路的稳定性和可靠性。在实际应用中,这种方法广泛用于数字信号处理和时钟管理等领域。 ... [详细]
  • 在MySQL中生成UUID可以通过以下SQL语句实现:生成大写的UUID使用 `SELECT UPPER(UUID())`;生成小写的UUID使用 `SELECT LOWER(UUID())`;生成标准格式的UUID使用 `SELECT UUID()`;若需生成去掉横杠的UUID,可以使用 `SELECT REPLACE(UUID(), '-', '')`。这些方法为数据标识提供了灵活且唯一的解决方案。 ... [详细]
  • MongoDB核心概念与基础知识解析
    MongoDB 是一种基于分布式文件存储的非关系型数据库系统,主要采用 C++ 语言开发。本文将详细介绍 MongoDB 的核心概念和基础知识,包括其与传统 SQL 数据库的区别,数据库及集合的基本操作,如数据的插入、更新、删除和查询等。通过本文,读者可以全面了解 MongoDB 的基本功能及其应用场景。 ... [详细]
  • 如何高效地将微信收藏夹中的内容导出至外部设备或平台? ... [详细]
  • 在C#中开发MP3播放器时,我正在考虑如何高效存储元数据以便快速检索。选择合适的数据结构,如字典或数组,对于优化性能至关重要。字典能够提供快速的键值对查找,而数组则在连续存储和遍历方面表现优异。根据具体需求,合理选择数据结构将显著提升应用的响应速度和用户体验。 ... [详细]
  • MySQL索引详解及其优化策略
    本文详细解析了MySQL索引的概念、数据结构及管理方法,并探讨了如何正确使用索引以提升查询性能。文章还深入讲解了联合索引与覆盖索引的应用场景,以及它们在优化数据库性能中的重要作用。此外,通过实例分析,进一步阐述了索引在高读写比系统中的必要性和优势。 ... [详细]
  • 本文详细介绍了在 SQL Server 2005 中优化和实现分页存储过程的方法。通过创建一个名为 `[dbo].[GetUsers]` 的存储过程,该过程接受两个参数:`@RowIndex`(当前指定的页数)和 `@RecordCount`(每页显示的记录数)。文章不仅提供了具体的代码示例,还深入探讨了性能优化技巧,包括索引使用和查询优化策略,以提高分页查询的效率和响应速度。 ... [详细]
author-avatar
可爱的伊比2324767445hMkK
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有