Heim Backend-Entwicklung PHP-Tutorial php去除数组内空格元素的有关问题

php去除数组内空格元素的有关问题

Jun 13, 2016 pm 12:59 PM
address count email forward nbsp

php去除数组内空格元素的问题
各位大虾级程序员:
    俺是刚入门的PHP菜鸟.现在请教一个问题:
   因公司需要,我下载并安装了一个Roundcube Wemail,按公司的要求自己在里面写一些必要的插件程序。其中在写转发邮件地址时,我是把要转发的地址写在一个变量中,然后利用explode()函数以回车符号分隔成各个数组元素,但发现只要保存后,最后一个元素总为空,怎以也删除不掉这个元素,这个问题困扰了我三天了。特来请教大家,以下是相关的程序:
 从数据库中获取的字段
 $user_saved_forward_email=forwardemail_qry(); //创建记录集
 $field_id='forward_email_addresss';
  
  if ($user_saved_forward_email!=null)
  {
          $myemail='';
  $email_arr= explode(";",$user_saved_forward_email[1]);//如果允许转发,则以";"从数据表该字段中分隔各元素并显示出来
   
   foreach($email_arr as $k=>$v)
   {
         if($k=count($email_arr-1))
 {
   $myemail = $myeamil.$v;
 }else{  
           $myemail=$myemail.$v.chr(10);          
    }
   }

html显示前台格式:
  $input_textarea = new html_textarea(array('name' => 'forward_email_address', 'id' => $field_id,
      'rows'=>24,'cols'=>80,'wrap'=>true,'value'=>$myemail));

把前台输入的字符串转化为数组,再用chr(10)分隔开数组内每一个元素,最后以“;”分隔写进数据库
$forward_email_address = get_input_value('forward_email_address', RCUBE_INPUT_POST);
// 把转发的所有地址转化为数组
$forward_email_address_Array = explode(chr(10),$forward_email_address);
//统计数组元素个数 $aaa;   
    $forward_address =array_unique($forward_email_address_Array); //获取不重复的数组元素
if(count($forward_address)!=count($forward_email_address_Array)) //如果有重复的邮件
{
  $forward_count =count($forward_address);   
           $rcmail->output->command('display_message',$this->gettext('forward_repeat'),'confirmation');
 return FORWARDEMAIL_ERROR;  
}
 $email_count =count($forward_address);
$forward_email_address=null;  //赋初值为NULL
  
for($i=0;$i   { 
  if(strlen(trim($forward_address[$i]))>2) //如果元素不为空
{
if(ereg("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$",trim($forward_address[$i])))  //如果符合电邮格式
{
   
  if($forward_address[$i]==$_SESSION['username']) //如果转发的是自身,则返回错误信息   
  {
      $rcmail->output->command('display_message',$this->gettext('forward_self'),'confirmation');
   return FORWARDEMAIL_ERROR;
  
}else //赋值给$forward_email_address变量后再加上";"
   {
     $forward_email_address =trim($forward_email_address.$forward_address[$i]).";";
   
   }    
}
else  //如果元素不符合格式将返回错误信息!
{
$forward_email_enabled="N";     
           $rcmail->output->command('display_message',$this->gettext('forward_incorrect'),'confirmation');
     echo "That Email Format is Wrong!"; 
            return FORWARDEMAIL_ERROR;

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Lösung: Ihre Organisation verlangt von Ihnen, dass Sie Ihre PIN ändern Lösung: Ihre Organisation verlangt von Ihnen, dass Sie Ihre PIN ändern Oct 04, 2023 pm 05:45 PM

Lösung: Ihre Organisation verlangt von Ihnen, dass Sie Ihre PIN ändern

So passen Sie die Fensterrahmeneinstellungen unter Windows 11 an: Farbe und Größe ändern So passen Sie die Fensterrahmeneinstellungen unter Windows 11 an: Farbe und Größe ändern Sep 22, 2023 am 11:37 AM

So passen Sie die Fensterrahmeneinstellungen unter Windows 11 an: Farbe und Größe ändern

Wie ändere ich die Farbe der Titelleiste unter Windows 11? Wie ändere ich die Farbe der Titelleiste unter Windows 11? Sep 14, 2023 pm 03:33 PM

Wie ändere ich die Farbe der Titelleiste unter Windows 11?

So aktivieren oder deaktivieren Sie die Vorschau von Miniaturansichten in der Taskleiste unter Windows 11 So aktivieren oder deaktivieren Sie die Vorschau von Miniaturansichten in der Taskleiste unter Windows 11 Sep 15, 2023 pm 03:57 PM

So aktivieren oder deaktivieren Sie die Vorschau von Miniaturansichten in der Taskleiste unter Windows 11

OOBELANGUAGE-Fehlerprobleme bei der Reparatur von Windows 11/10 OOBELANGUAGE-Fehlerprobleme bei der Reparatur von Windows 11/10 Jul 16, 2023 pm 03:29 PM

OOBELANGUAGE-Fehlerprobleme bei der Reparatur von Windows 11/10

Anleitung zur Anzeigeskalierung unter Windows 11 Anleitung zur Anzeigeskalierung unter Windows 11 Sep 19, 2023 pm 06:45 PM

Anleitung zur Anzeigeskalierung unter Windows 11

10 Möglichkeiten, die Helligkeit unter Windows 11 anzupassen 10 Möglichkeiten, die Helligkeit unter Windows 11 anzupassen Dec 18, 2023 pm 02:21 PM

10 Möglichkeiten, die Helligkeit unter Windows 11 anzupassen

Wie deaktiviere ich die Authentifizierung beim privaten Surfen auf dem iPhone in Safari? Wie deaktiviere ich die Authentifizierung beim privaten Surfen auf dem iPhone in Safari? Nov 29, 2023 pm 11:21 PM

Wie deaktiviere ich die Authentifizierung beim privaten Surfen auf dem iPhone in Safari?

See all articles