为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 PHP 分离街道名称和门牌号码?

如何使用 PHP 分离街道名称和门牌号码?

PHP
翻过高山走不出你 2023-09-22 17:37:23
在德国,我们有街道名称和门牌号码。我使用的数据库将两者存储在单个列中(例如“Arnoldstraße 12”),并且我想将两者分成单个变量。我有这个代码:$street= $row[2]; //This row is from an array with values of the database. The other rows are submitted perfectly.preg_match('/([^\d]+)(\d+.*)/', $street, $matches);$street_new = trim($matches[1]);$house_number= trim($matches[2]);  while ($row = $jobDB->fetchArray($result)) {        $this->setReturnValue('strasse', $street_new);        $this->setReturnValue('hausnummer', $house_number);        return;    }之后,我使用 JS 代码将其(以及更多值)放入网站上的表单中。其他值都可以顺利到达那里,只是缺少街道名称和门牌号。这是 JS 代码:var auto_complete = function() {     var kontonr = jr_get_value('tb_kundennummer');    jr_execute_dialog_function('autoComplete', {kontonummer: kontonr}, mySuccessCallback);    }var mySuccessCallback = function(returnObject) {    jr_set_value('tb_kunde_strasse', returnObject.result.street_new);     jr_set_value('tb_kunde_hausnummer', returnObject.result.house_number);}我究竟做错了什么?
查看完整描述

1 回答

?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

好吧,我找到了解决方案。将代码添加到 while 循环后,它运行得很好:


      while ($row = $jobDB->fetchArray($result)) {            

          $street= $row[2];

          preg_match('/([^\d]+)(\d+.*)/', $street, $matches); 

          $street= trim($matches[1]);

          $house_number= trim($matches[2]);

            

          $this->setReturnValue('strasse', $street);

          $this->setReturnValue('hausnummer', $house_number);


        return;

    }


我不是一个开发人员,但也许是因为 $row 仅在 fetchArray 之后调用才有效。但我不确定。


查看完整回答
反对 回复 2023-09-22
  • 1 回答
  • 0 关注
  • 127 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号