把每次都要执行的部分抽出来
php中,共有3个函数,其中绝大分数是相同的。如何能更科学的变成一个函数,从而搞效率。
方法一:将此3个函数变成一个,怎么实现呢?
方法二:奖此3个函数的执行体,就是输出的部分公共部分,单独做个函数。如何实现呢?????
function wc1($sql){<br /> <br /> $tb='';<br /> $showArr=array();<br /> $q=$this->getAll3($sql);<br /> while ($r=$q->fetch_array(MYSQLI_USE_RESULT)) {<br /> $tb.='<tr><td>'.$r["number"].'</td>';<br /> $tb.=isset($this->show["customer"])?'<td>'.$r["customer"].'</td>':NULL;<br /> $tb.=isset($this->show["orderNo"])?'<td>'.$r["orderNo"].'</td>':NULL;<br /> <br /> <br /> }<br /> return $tb; <br /> }<br /> function wc2($sql){<br /> <br /> $tb='';<br /> $showArr=array();<br /> $q=$this->getAll3($sql);<br /> while ($r=$q->fetch_array(MYSQLI_USE_RESULT)) {<br /> $tb.='<tr><td>'.$r["number"].'</td>';<br /> $tb.=isset($this->show["customer"])?'<td>'.$r["customer"].'</td>':NULL;<br /> $tb.=isset($this->show["orderNo"])?'<td>'.$r["orderNo"].'</td>':NULL;<br /> $tb.=isset($this->show["name"])?'<td>'.$r["name"].'</td>':NULL;<br /> $tb.=isset($this->show["wc"])?'<td>'.$r["wc"].'</td>':NULL;//----------------此处有变化<br /> <br /> }<br /> return $tb; <br /> }<br /> function wc3($sql){<br /> <br /> $tb='';<br /> $showArr=array();<br /> $q=$this->getAll3($sql);<br /> while ($r=$q->fetch_array(MYSQLI_USE_RESULT)) {<br /> $tb.='<tr><td>'.$r["number"].'</td>';<br /> $tb.=isset($this->show["customer"])?'<td>'.$r["customer"].'</td>':NULL;<br /> $tb.=isset($this->show["orderNo"])?'<td>'.$r["orderNo"].'</td>':NULL;<br /> $tb.=isset($this->show["name"])?'<td>'.$r["name"].'</td>':NULL;<br /> $tb.=isset($this->show["fsaww"])?'<td>'.$r["sfs3"].'</td>':NULL;//----------------此处有变化<br /> <br /> }<br /> return $tb; <br /> }
------解决方案--------------------
function wc($sql){<br /> $tb='';<br /> $showArr=array();<br /> $q=$this->getAll3($sql);<br /> $dict = array('fsaww' => 'sfs3'); //这里是对照表<br /> while ($r=$q->fetch_array(MYSQLI_USE_RESULT)) {<br /> $tb.='<tr><td>'.$r["number"].'</td>';<br /> foreach($this->show as $k) {<br /> if(isset($dict[$k])) $k = $dict[$k];<br /> $tb.='<td>'.$r[$k].'</td>';<br /> }<br /> }<br /> return $tb; <br /> }
------解决方案--------------------
<?php <br /> function wc1($sql, $assoc = array()){<br> <br> $tb='';<br> $showArr = array();<br> $q=$this->getAll3($sql);<br> while ($r=$q->fetch_array(MYSQLI_USE_RESULT)) {<br> $tb.='<tr> <td>'.$r["number"].'</td>';<br> if(count($assoc)){<br> foreach($keys as $k => $v){<br> $tb .= isset($this->show[$k]) ?'<td>'.$r[$v].'</td>':NULL;<br> }<br> }<br> }<br> return $tb;<br> }<br> <br> wc1($sql, array('customer' => 'customer', 'orderNo' => 'orderNo'));<br> wc1($sql, array('customer' => 'customer', 'orderNo' => 'orderNo', 'name' => 'name', 'wc' => 'wc'));<br> wc1($sql, array('customer' => 'customer', 'orderNo' => 'orderNo', 'name' => 'name', 'fsaww' => 'sfs3')); <div class="clear"> </div> </tr>

DependencyInjection(DI)inPHPenhancescodeflexibilityandtestabilitybydecouplingdependencycreationfromusage.ToimplementDIeffectively:1)UseDIcontainersjudiciouslytoavoidover-engineering.2)Avoidconstructoroverloadbylimitingdependenciestothreeorfour.3)Adhe

到Improveyourphpwebsite的实力,UsEthestertate:1)emplastOpCodeCachingWithOpcachetCachetOspeedUpScriptInterpretation.2)优化的atabasequesquesquesquelies berselectingOnlynlynnellynnessaryfields.3)usecachingsystemssslikeremememememcachedisemcachedtoredtoredtoredsatabaseloadch.4)

是的,itispossibletosendMassemailswithp.1)uselibrarieslikeLikePhpMailerorSwiftMailerForeffitedEmailSending.2)enasledeLaysBetemailStoavoidSpamflagssspamflags.3)sylectynamicContentToimpovereveragement.4)

DependencyInjection(DI)inPHPisadesignpatternthatachievesInversionofControl(IoC)byallowingdependenciestobeinjectedintoclasses,enhancingmodularity,testability,andflexibility.DIdecouplesclassesfromspecificimplementations,makingcodemoremanageableandadapt

使用PHP发送电子邮件的最佳方法包括:1.使用PHP的mail()函数进行基本发送;2.使用PHPMailer库发送更复杂的HTML邮件;3.使用SendGrid等事务性邮件服务提高可靠性和分析能力。通过这些方法,可以确保邮件不仅到达收件箱,还能吸引收件人。

计算PHP多维数组的元素总数可以使用递归或迭代方法。1.递归方法通过遍历数组并递归处理嵌套数组来计数。2.迭代方法使用栈来模拟递归,避免深度问题。3.array_walk_recursive函数也能实现,但需手动计数。

在PHP中,do-while循环的特点是保证循环体至少执行一次,然后再根据条件决定是否继续循环。1)它在条件检查之前执行循环体,适合需要确保操作至少执行一次的场景,如用户输入验证和菜单系统。2)然而,do-while循环的语法可能导致新手困惑,且可能增加不必要的性能开销。

在PHP中高效地哈希字符串可以使用以下方法:1.使用md5函数进行快速哈希,但不适合密码存储。2.使用sha256函数提高安全性。3.使用password_hash函数处理密码,提供最高安全性和便捷性。


热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章

热工具

WebStorm Mac版
好用的JavaScript开发工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

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

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)