루프를 통과해야하는 배열이 있고 특정 키의 경우 chopActNum 함수를 호출해야합니다. 이 함수는 계좌 번호를 받아 "xxxxxxxxxx1234"형식으로 변환합니다. 그런 다음 전체 계정 번호 대신이 새로운 형식을 표시하고 싶습니다. 내 $accountList
은 계정에 대한 모든 정보를 보유하고 있습니다. 내 혼란은 현재 Smarty 템플릿에 할당을 통해 내 계정 정보를 모두 표시한다는 점에서 다릅니다. 나는 끔찍한 설명을하기 때문에 아마도 내 코드를 보면 내 문제를 해명하는 데 도움이 될 것이다.
내 기능 :어떻게 배열을 통해 루프를 수행하고 각각에 대해 함수를 호출합니까?
public function chopActNum($actNum=0){
$numPlace=strlen($actNum)-4;
$repeatX=str_repeat('x',$numPlace);
$actNumConcat=$repeatX.substr($actNum, -4);
return $actNumConcat;
PHP :
foreach($achList as $a)
{
$actNum[] = $a['actNum'];
$chopNum=$Ach->chopActNum($actNum);
}
$achList=$Ach->listAch($logged_userid);
$smarty->assign("accountList",$achList);
TPL 코드 :
{foreach from=$accountList item=v name=foo}
<td class="tableData">{$v.actName}</td>
<td class="tableData">{$v.actNum}</td>
<td class="tableData">{$v.bankRoute}</td>
{/foreach}
'chopActNum'을 호출해야하는 특정 키 중 하나인지 어떻게 알 수 있습니까? – Barmar
나는 이해하지 못한다. 귀하의 PHP 코드에서 당신은 $ chopNum지고 있지만 당신은 결코 그것으로 아무것도하지 않습니다. 다음과 같이하고 싶지 않으신가요? $ a [ 'chopNum'] = $ chopNum' 또는 '$ a [ 'actNum'] = $ chopNum'? $ a에 & reference 마커를 두는 것을 잊지 마십시오. 즉, 'foreach ($ achList as & $ a)' 또는 $ a의 내용을 루프에서 변경하지만 변경 사항은 아닙니다. 루프가 완료되면 리턴됩니다. –
주말 동안 해결책을 찾지 못했지만 도움을 주신 모든 분들께 감사드립니다. for ($ x = 0; $ x chopActNum ($ actNum); $ achList [$ x] [ 'accountNumDisplay'] = $ chopNum; } –