$data = array(); if (!empty($_POST['field_id'])) { foreach ($_POST['field_id'] as $k => $v) { $data[] = array( 'field_id' => $v, 'choice' => isset($_POST['choice'][$k]) ? $_POST['choice'][$k] : '', 'uid' => $_POST['uid'], 'game_id' => $_POST['game_id'], 'server_id' => $_POST['server_id'] ); } }
这是我循环格式化的地方,下面是输出的数组数据
Array( [0] => Array ( [field_id] => 1 [choice] => 0 [uid] => 110000110 [game_id] => 2 [server_id] => 2 ) [1] => Array ( [field_id] => 2 [choice] => 0 [uid] => 110000110 [game_id] => 2 [server_id] => 2 ) [2] => Array ( [field_id] => 3 [choice] => 1 [uid] => 110000110 [game_id] => 2 [server_id] => 2 ))
当choiece等于空的时候 [choice] =>没有值的时候不加入到data数组里面怎么实现呢?
回复讨论(解决方案)
[1] => Array
(
[field_id] => 2
[choice] =>
[uid] => 110000110
[game_id] => 2
[server_id] => 2
)
像这样的情况,0和1是有值的。
你示例的数据中并没有 [choice] => 的情况
如果有的话,是仅不要 choice 项,还是整组都不要?
你对 $_POST['choice'] 循环,不是比对 $_POST['field_id'] 循环等容易点吗?
你示例的数据中并没有 [choice] => 的情况
如果有的话,是仅不要 choice 项,还是整组都不要?
你对 $_POST['choice'] 循环,不是比对 $_POST['field_id'] 循环等容易点吗?
Array
(
[0] => Array
(
[field_id] => 1
[choice] => 0
[uid] => 110000110
[game_id] => 2
[server_id] => 2
)
[1] => Array
(
[field_id] => 2
[choice] =>
[uid] => 110000110
[game_id] => 2
[server_id] => 2
)
[2] => Array
(
[field_id] => 3
[choice] =>
[uid] => 110000110
[game_id] => 2
[server_id] => 2
)
)
大概就是这样一个效果,没有值的就不要了,显示成这样
Array
(
[0] => Array
(
[field_id] => 1
[choice] => 0
[uid] => 110000110
[game_id] => 2
[server_id] => 2
)
)
只有choice没有值的就整个数组都不要了。
$data = array();if (!empty($_POST['field_id'])) { foreach ($_POST['choice'] as $k => $v) { if($v == '') continue; $data[] = array( 'field_id' => $_POST['field_id'][$k], 'choice' => $_POST['choice'][$k], 'uid' => $_POST['uid'], 'game_id' => $_POST['game_id'], 'server_id' => $_POST['server_id'] ); } }
$data = array();if (!empty($_POST['field_id'])) { foreach ($_POST['choice'] as $k => $v) { if($v == '') continue; $data[] = array( 'field_id' => $_POST['field_id'][$k], 'choice' => $_POST['choice'][$k], 'uid' => $_POST['uid'], 'game_id' => $_POST['game_id'], 'server_id' => $_POST['server_id'] ); } }
谢谢版主,不过我下面用的批量添加的时候,如果已经选择过了的会提示失败,tp里面addall怎么判断是否已经添加过了呢
$Choice=D('Myselect'); //$choices=$Choice->addAll($data); if($Choice->addAll($data)){ $back['status']='success'; $back['msg']='您的投注已经成功!'; $back['url']='game'; $this->back($back); }else{ $back['status']='error'; $back['msg']='投注失败!别重复下注哦!'; $back['url']='game'; $this->back($back); exit; } }
if($Choice->addAll($data,array(),true)){}看了下mod默认是false,改成true会一直改变数据库的值,那就没有意义了
if($Choice->addAll($data,array(),false)){}这种情况怎么判断是否已经存在数据库了呢,各位前辈有什么好的办法吗?

TheSecretTokeEpingAphp-PowerEdwebSiterUnningSmoothlyShyunderHeavyLoadInVolvOLVOLVOLDEVERSALKEYSTRATICES:1)emplactopCodeCachingWithOpcachingWithOpCacheToreCescriptexecution Time,2)使用atabasequercachingCachingCachingWithRedataBasEndataBaseLeSendataBaseLoad,3)

你应该关心DependencyInjection(DI),因为它能让你的代码更清晰、更易维护。1)DI通过解耦类,使其更模块化,2)提高了测试的便捷性和代码的灵活性,3)使用DI容器可以管理复杂的依赖关系,但要注意性能影响和循环依赖问题,4)最佳实践是依赖于抽象接口,实现松散耦合。

是的,优化papplicationispossibleandessential.1)empartcachingingcachingusedapcutorediucedsatabaseload.2)优化的atabaseswithexing,高效Quereteries,and ConconnectionPooling.3)EnhanceCodeWithBuilt-unctions,避免使用,避免使用ingglobalalairaiables,并避免使用

theKeyStrategiestosiminificallyBoostphpapplicationPermenCeare:1)useOpCodeCachingLikeLikeLikeLikeLikeCacheToreDuceExecutiontime,2)优化AtabaseInteractionswithPreparedStateTemtStatementStatementSandProperIndexing,3)配置

aphpdepentioncontiveContainerIsatoolThatManagesClassDeptions,增强codemodocultion,可验证性和Maintainability.itactsasaceCentralHubForeatingingIndections,因此reducingTightCightTightCoupOulplingIndeSingantInting。

选择DependencyInjection(DI)用于大型应用,ServiceLocator适合小型项目或原型。1)DI通过构造函数注入依赖,提高代码的测试性和模块化。2)ServiceLocator通过中心注册获取服务,方便但可能导致代码耦合度增加。

phpapplicationscanbeoptimizedForsPeedAndeffificeby:1)启用cacheInphp.ini,2)使用preparedStatatementSwithPdoforDatabasequesies,3)3)替换loopswitharray_filtaray_filteraray_maparray_mapfordataprocrocessing,4)conformentnginxasaseproxy,5)

phpemailvalidation invoLvesthreesteps:1)格式化进行regulareXpressecthemailFormat; 2)dnsvalidationtoshethedomainhasavalidmxrecord; 3)


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

禅工作室 13.0.1
功能强大的PHP集成开发环境

SublimeText3汉化版
中文版,非常好用

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中