检测与删除页面BOM(UTF-8)空行方法
我们经常会在发现页面中无故多了一些空白行了,但在编辑器中又看到到,这个我们知道是由BOM(UTF-8)导致的,下面小编来给大家分享几种关于BOM(UTF-8)检测与删除方法。
下图是出现前面说的情况后用firebug看到的HTML代码。
图1
里面莫名其妙多出了一个空白行,而我们看源代码里面却没有。
我最常用的办法,利用php替换
BOM: 万国码档案签名 BOM (Byte Order Mark, U+FEFF)
BOM 的内容可以表示 UNICODE 是哪种编码, 但是在接收到的档案, 要拆解后写入 DB, 看到 BOM 就觉得有点 ooxx.
在 utf8_encode 看到两段程式可以来测试 写入/移除 BOM.
将写入的档案内容前加 BOM
代码如下 | 复制代码 |
function writeUTF8File($filename,$content) |
移除 BOM function
代码如下 | 复制代码 |
function removeBOM($str = '') |
由此上述 BOM = pack("CCC",0xef,0xbb,0xbf), 所以移除 BOM 的写法可用上面的 removeBOM function 或 下述其一:
■str_replace("锘�", '', $bom_content);
■preg_replace("/^锘�/", '', $bom_content);
另外看到 判断此字串是不是 UTF-8 的 function:
代码如下 | 复制代码 |
function isUTF8($string) |
linux系统中使用shell来解决
在详细讨论UTF-8编码中BOM的检测与删除问题前,不妨先通过一个例子热热身:
代码如下 | 复制代码 |
shell> curl -s http://www.bKjia.c0m/ | head -1 | sed -n l 锘�br /> //EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> $ |
如上所示,前三个字节分别是357、273、277,这就是八进制的BOM。
代码如下 | 复制代码 |
shell> curl -s http://www.111cn.Net/ | head -1 | hexdump -C 00000000 ef bb bf 3c 21 44 4f 43 54 59 50 45 20 68 74 6d |... 00000010 6c 20 50 55 42 4c 49 43 20 22 2d 2f 2f 57 33 43 |l PUBLIC "-//W3C| 00000020 2f 2f 44 54 44 20 58 48 54 4d 4c 20 31 2e 30 20 |//DTD XHTML 1.0 | 00000030 54 72 61 6e 73 69 74 69 6f 6e 61 6c 2f 2f 45 4e |Transitional//EN| 00000040 22 20 22 68 74 74 70 3a 2f 2f 77 77 77 2e 77 33 |" "http://www.w3| 00000050 2e 6f 72 67 2f 54 52 2f 78 68 74 6d 6c 31 2f 44 |.org/TR/xhtml1/D| 00000060 54 44 2f 78 68 74 6d 6c 31 2d 74 72 61 6e 73 69 |TD/xhtml1-transi| 00000070 74 69 6f 6e 61 6c 2e 64 74 64 22 3e 0d 0a |tional.dtd">..| |
如上所示,前三个字节分别是EF、BB、BF,这就是十六进制的BOM。 注:用到了第三方网站的页面,不能保证例子始终可用。 实际做项目开发时,可能会面对成百上千个文本文件,如果有几个文件混入了BOM,那么很难察觉,如果没有带BOM的UTF-8文本文件,可以用vi杜撰几个,相关命令如下:
设置UTF-8编码:
代码如下 | 复制代码 |
:set fileencoding=utf-8 |
添加BOM:
代码如下 | 复制代码 |
:set bomb |
删除BOM:
代码如下 | 复制代码 |
:set nobomb |
查询BOM:
代码如下 | 复制代码 |
:set bomb? |
如何检测UTF-8编码中的BOM呢?
代码如下 | 复制代码 |
shell> grep -r -I -l $'^锘�' /path如何删除UTF-8编码中的BOM呢? shell> grep -r -I -l $'^锘�' /path | xargs sed -i 's/^锘�//;q' |
推荐:如果你使用SVN的话,可以在pre-commit钩子里加上相关代码用以杜绝BOM。
代码如下 | 复制代码 |
#!/bin/bash REPOS="$1" SVNLOOK=/usr/bin/svnlook for FILE in $($SVNLOOK changed -t "$TXN" "$REPOS" | awk '/^[AU]/ {print $NF}'); do |
本文用到了很多shell命令
方法三,利用ultraedit编辑器直接修改文档
把出现空行的文档另存没没有BOM的格式就行了。
下图是ultraedit保存文档时的编码格式:
图2
选择里面的UTF8-无BOM,一切解决

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Tomato Novel is a very popular novel reading software. We often have new novels and comics to read in Tomato Novel. Every novel and comic is very interesting. Many friends also want to write novels. Earn pocket money and edit the content of the novel you want to write into text. So how do we write the novel in it? My friends don’t know, so let’s go to this site together. Let’s take some time to look at an introduction to how to write a novel. Share the Tomato novel tutorial on how to write a novel. 1. First open the Tomato free novel app on your mobile phone and click on Personal Center - Writer Center. 2. Jump to the Tomato Writer Assistant page - click on Create a new book at the end of the novel.

Unfortunately, people often delete certain contacts accidentally for some reasons. WeChat is a widely used social software. To help users solve this problem, this article will introduce how to retrieve deleted contacts in a simple way. 1. Understand the WeChat contact deletion mechanism. This provides us with the possibility to retrieve deleted contacts. The contact deletion mechanism in WeChat removes them from the address book, but does not delete them completely. 2. Use WeChat’s built-in “Contact Book Recovery” function. WeChat provides “Contact Book Recovery” to save time and energy. Users can quickly retrieve previously deleted contacts through this function. 3. Enter the WeChat settings page and click the lower right corner, open the WeChat application "Me" and click the settings icon in the upper right corner to enter the settings page.

1. First of all, it is false to block and delete someone permanently and not add them permanently. If you want to add the other party after you have blocked them and deleted them, you only need the other party's consent. 2. If a user blocks someone, the other party will not be able to send messages to the user, view the user's circle of friends, or make calls with the user. 3. Blocking does not mean deleting the other party from the user's WeChat contact list. 4. If the user deletes the other party from the user's WeChat contact list after blocking them, there is no way to recover after deletion. 5. If the user wants to add the other party as a friend again, the other party needs to agree and add the user again.

1. Open the Douyin app, click [Message] at the bottom of the interface, and click the chat conversation entry that needs to be deleted. 2. Long press any chat record, click [Multiple Select], and check the chat records you want to delete. 3. Click the [Delete] button in the lower right corner and select [Confirm deletion] in the pop-up window to permanently delete these records.

Mobile games have become an integral part of people's lives with the development of technology. It has attracted the attention of many players with its cute dragon egg image and interesting hatching process, and one of the games that has attracted much attention is the mobile version of Dragon Egg. To help players better cultivate and grow their own dragons in the game, this article will introduce to you how to hatch dragon eggs in the mobile version. 1. Choose the appropriate type of dragon egg. Players need to carefully choose the type of dragon egg that they like and suit themselves, based on the different types of dragon egg attributes and abilities provided in the game. 2. Upgrade the level of the incubation machine. Players need to improve the level of the incubation machine by completing tasks and collecting props. The level of the incubation machine determines the hatching speed and hatching success rate. 3. Collect the resources required for hatching. Players need to be in the game

In today's society, mobile phones have become an indispensable part of our lives. As an important tool for our daily communication, work, and life, WeChat is often used. However, it may be necessary to separate two WeChat accounts when handling different transactions, which requires the mobile phone to support logging in to two WeChat accounts at the same time. As a well-known domestic brand, Huawei mobile phones are used by many people. So what is the method to open two WeChat accounts on Huawei mobile phones? Let’s reveal the secret of this method. First of all, you need to use two WeChat accounts at the same time on your Huawei mobile phone. The easiest way is to

1. Open the PPT file you created and select the second slide. 2. On the second slide, select one of the pictures, and then select [Animation] to add any animation effect. 3. In the start column of the animation bar, change [While Standalone] to [After Previous Animation], and you will see that the picture animation label [1] will change to [0]. Do the same for subsequent slides, and you can see the effect by playing the slide at the end.

Setting font size has become an important personalization requirement as mobile phones become an important tool in people's daily lives. In order to meet the needs of different users, this article will introduce how to improve the mobile phone use experience and adjust the font size of the mobile phone through simple operations. Why do you need to adjust the font size of your mobile phone - Adjusting the font size can make the text clearer and easier to read - Suitable for the reading needs of users of different ages - Convenient for users with poor vision to use the font size setting function of the mobile phone system - How to enter the system settings interface - In Find and enter the "Display" option in the settings interface - find the "Font Size" option and adjust it. Adjust the font size with a third-party application - download and install an application that supports font size adjustment - open the application and enter the relevant settings interface - according to the individual
