在使用php对mysql进行处理时,有时候要对文件内容进行读取并输出,处理时发现php对读取的文件内容输出字符串后面会有一个空格,从而影响某些操作
例如:文件 2.txt 内容如下
<code>123</code>
<code>234</code>
<code>abc</code>
php脚本
file.php
<code><?php</code>
<code>$con</code> <code>= mysql_connect(</code><code>"localhost"</code><code>,</code><code>"root"</code><code>,</code><code>"111111"</code><code>);</code>
<code>if</code> <code>(!</code><code>$con</code><code>)</code>
<code>{</code>
<code>die</code><code>(</code><code>'Could not connect:'</code> <code>.mysql_error());</code>
<code>}</code>
<code>mysql_select_db(</code><code>"zzadmin"</code><code>,</code><code>$con</code><code>);</code>
<code>$file</code><code>=file(</code><code>'2.txt'</code><code>);</code>
<code>$arrlength</code><code>=</code><code>count</code><code>(</code><code>$file</code><code>);</code>
<code>for</code> <code>(</code><code>$x</code><code>=0;</code><code>$x</code><code><</code><code>$arrlength</code><code>;</code><code>$x</code><code>++) {</code>
<code>$b</code><code>=</code><code>$file</code><code>[</code><code>$x</code><code>];</code>
<code>$sql</code> <code>= </code><code>"INSERT INTO csdn_db (username,passwd,email) SELECT username,passwd,email FROM csdn where passwd like '$b%'"</code><code>;</code>
<code>var_dump(</code><code>$sql</code><code>);</code>
<code>echo</code> <code>"<p>"</code><code>;</code>
<code>?></code>
如图1
查阅资料发现可以通过PHP trim()函数解决此问题
方法如下:
trim() 去除一个字符串两端空格,
rtrim() 是去除一个字符串右部空格,
ltrim() 是去除一个字符串左部空格。
-------------------------------------
更改脚本:
<code>$c</code><code>=</code><code>$file</code><code>[</code><code>$x</code><code>];</code>
<code>$b</code><code>=rtrim(</code><code>$c</code><code>); </code>
<code>//添加函数</code>
<code>></code>
如图2
<a href="http://s3.51cto.com/wyfs02/M00/74/82/wKiom1YfRBXhiYXQAAEWhc5O4SE659.jpg" target="_blank"></a>
OK 完美解决
本文转自 1inux 51CTO博客,原文链接:http://blog.51cto.com/1inux/1703162