Home Backend Development PHP Tutorial Summary of problems with PHP character processing functions_PHP tutorial

Summary of problems with PHP character processing functions_PHP tutorial

Jul 15, 2016 pm 01:31 PM
array java php ZERO code function exist deal with character study Summarize us of question

我们在学习PHP字符处理函数1. in_array()函数

Java代码

  1. $zero = "0";   
  2. $za = array("00");   
  3. if(in_array($zero, $za, true)){   
  4. echo 'in';   
  5. }else{   
  6. echo 'not in';   
  7. }  
  8. $zero = "0";  
  9. $za = array("00");  
  10. if(in_array($zero, $za, true)){  
  11. echo 'in';  
  12. }else{  
  13. echo 'not in';  
  14. }  

这段代码应该输出什么?答案是in,而不是not in。
然后测试一下这个:

Java代码

<ol class="dp-xml">
<li class="alt"><span><span>$</span><span class="attribute">zero</span><span> = </span><span class="attribute-value">"0"</span><span>;   </span></span></li>
<li>
<span>$</span><span class="attribute">za</span><span> = </span><span class="attribute-value">array</span><span>("00");   </span>
</li>
<li class="alt"><span>if("0" == "00"){   </span></li>
<li>
<span>echo '</span><span class="attribute">0</span><span> == 00';   </span>
</li>
<li class="alt"><span>}   </span></li>
<li>
<span>$</span><span class="attribute">zero</span><span> = </span><span class="attribute-value">"0"</span><span>;  </span>
</li>
<li class="alt">
<span>$</span><span class="attribute">za</span><span> = </span><span class="attribute-value">array</span><span>("00");  </span>
</li>
<li><span>if("0" == "00"){  </span></li>
<li class="alt">
<span>echo '</span><span class="attribute">0</span><span> == 00';  </span>
</li>
<li><span>}  </span></li>
</ol>
Copy after login

返回'0'=='00'。

所以以后要注意:对于字符串不是说in,就表示那个字符在array里面。

PHP字符处理函数2. strtolower()函数

我的解决方式是:

Java代码

<ol class="dp-xml">
<li class="alt">
<span><span>urldecode(strtolower<br></span></span><span><span>(urlendoce($str))</span></span><span><span>);   </span></span>
</li>
<li><span>urldecode(strtolower<br>(urlendoce($str)));  </span></li>
</ol>
Copy after login

PHP字符处理函数3. trim()

如果面对的是英文字符,那么trim()应该就满足了,但是对于中文字符,就应该重写以trim掉全角的空格:

Java代码

<ol class="dp-xml">
<li class="alt"><span><span>function cntrim($value){   </span></span></li>
<li><span>return trim(ereg_replace("^(<br> )*|( )*$","", $value));   </span></li>
<li class="alt"><span>}   </span></li>
<li><span> </span></li>
<li class="alt"><span>function cntrim($value){  </span></li>
<li><span>return trim(ereg_replace("^( <br>)*|( )*$","", $value));  </span></li>
<li class="alt"><span>}  </span></li>
</ol>
Copy after login

PHP字符处理函数4. empty():

这个就有点像上面那个in_array()了,如果你要判断一个textarea里面是否有值,不能光使用empty,因为'0'字符串也会返回empty(但奇怪的是'00'就不会返回empty),重写以应对这种情况:

Java代码

<ol class="dp-xml">
<li class="alt"><span><span>function non_szero_empty<br>($value){   </span></span></li>
<li><span>return empty($value) && <br>$value != '0';   </span></li>
<li class="alt"><span>}   </span></li>
<li><span> </span></li>
<li class="alt"><span>function non_szero_empty<br>($value){  </span></li>
<li><span>return empty($value) &&<br> $value != '0';  </span></li>
<li class="alt"><span>}  </span></li>
</ol>
Copy after login

PHP字符处理函数5. htmlentities():

与strtolower()类似,htmlentities也会出现一些转义gbk字符的问题,以致出现乱码。索性这样替换:

Java代码

<ol class="dp-xml">
<li class="alt"><span><span>function _myhtmlentities($value){   </span></span></li>
<li>
<span>//$</span><span class="attribute">value</span><span> = </span><span class="attribute-value">preg_replace</span><span>('/&amp;<br>((#(d{3,5}|x[a-fA-F0-9]{4})|<br>[a-zA-Z][a-z0-9]{2,5});)/', '&\1'<br>, str_replace(array('&', '"', '</span><span class="tag"><</span><span> ', '</span><span class="tag">></span><span>')<br>, array('&amp;', '&quot;', '</span><span class="tag">&lt;</span><span>', <br>'</span><span class="tag">&gt;</span><span>'), $value));   </span>
</li>
<li class="alt">
<span>$</span><span class="attribute">value</span><span> = </span><span class="attribute-value">str_replace</span><span>(array('&', '"', <br>'</span><span class="tag"><</span><span> ', '</span><span class="tag">></span><span>'), array('&amp;', '&quot;', <br>'</span><span class="tag">&lt;</span><span>', '</span><span class="tag">&gt;</span><span>'), $value);   </span>
</li>
<li><span>return $value;   </span></li>
<li class="alt"><span>}   </span></li>
<li><span>function _myhtmlentities($value){  </span></li>
<li class="alt">
<span>//$</span><span class="attribute">value</span><span> = </span><span class="attribute-value">preg_replace</span><span>('/&amp;((#(<br>d{3,5}|x[a-fA-F0-9]{4})|[a-zA-Z][a-<br>z0-9]{2,5});)/', '&\1', str_replace<br>(array('&', '"', '</span><span class="tag"><</span><span> ', '</span><span class="tag">></span><span>'), array(<br>'&amp;', '&quot;', '</span><span class="tag">&lt;</span><span>', '</span><span class="tag">&gt;</span><span>'), $value));  </span>
</li>
<li>
<span>$</span><span class="attribute">value</span><span> = </span><span class="attribute-value">str_replace</span><span>(array('&', '"', <br>'</span><span class="tag"><</span><span> ', '</span><span class="tag">></span><span>'), array('&amp;', '&quot;', <br>'</span><span class="tag">&lt;</span><span>', '</span><span class="tag">&gt;</span><span>'), $value);  </span>
</li>
<li class="alt"><span>return $value;  </span></li>
<li><span>} </span></li>
</ol>
Copy after login

不过现在还在疑惑为什么htmlentities会出现乱码,这样改为什么又可行。计划有时间看源代码一探究竟。

以上就是我们这次要向大家介绍的PHP字符处理函数的全部内容。


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/446229.htmlTechArticle我们在学习 PHP字符处理函数1. in_array()函数 Java代码 $ zero = 0 ; $ za = array (00); if(in_array($zero,$za,true)){ echo'in'; }else{ echo'notin'; } $ zero = 0 ; $ za...
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian PHP 8.4 Installation and Upgrade guide for Ubuntu and Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

How To Set Up Visual Studio Code (VS Code) for PHP Development How To Set Up Visual Studio Code (VS Code) for PHP Development Dec 20, 2024 am 11:31 AM

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

How do you parse and process HTML/XML in PHP? How do you parse and process HTML/XML in PHP? Feb 07, 2025 am 11:57 AM

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

Break or return from Java 8 stream forEach? Break or return from Java 8 stream forEach? Feb 07, 2025 pm 12:09 PM

Java 8 introduces the Stream API, providing a powerful and expressive way to process data collections. However, a common question when using Stream is: How to break or return from a forEach operation? Traditional loops allow for early interruption or return, but Stream's forEach method does not directly support this method. This article will explain the reasons and explore alternative methods for implementing premature termination in Stream processing systems. Further reading: Java Stream API improvements Understand Stream forEach The forEach method is a terminal operation that performs one operation on each element in the Stream. Its design intention is

PHP Program to Count Vowels in a String PHP Program to Count Vowels in a String Feb 07, 2025 pm 12:12 PM

A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total

Java Made Simple: A Beginner's Guide to Programming Power Java Made Simple: A Beginner's Guide to Programming Power Oct 11, 2024 pm 06:30 PM

Java Made Simple: A Beginner's Guide to Programming Power Introduction Java is a powerful programming language used in everything from mobile applications to enterprise-level systems. For beginners, Java's syntax is simple and easy to understand, making it an ideal choice for learning programming. Basic Syntax Java uses a class-based object-oriented programming paradigm. Classes are templates that organize related data and behavior together. Here is a simple Java class example: publicclassPerson{privateStringname;privateintage;

Create the Future: Java Programming for Absolute Beginners Create the Future: Java Programming for Absolute Beginners Oct 13, 2024 pm 01:32 PM

Java is a popular programming language that can be learned by both beginners and experienced developers. This tutorial starts with basic concepts and progresses through advanced topics. After installing the Java Development Kit, you can practice programming by creating a simple "Hello, World!" program. After you understand the code, use the command prompt to compile and run the program, and "Hello, World!" will be output on the console. Learning Java starts your programming journey, and as your mastery deepens, you can create more complex applications.

Java Program to Find the Volume of Capsule Java Program to Find the Volume of Capsule Feb 07, 2025 am 11:37 AM

Capsules are three-dimensional geometric figures, composed of a cylinder and a hemisphere at both ends. The volume of the capsule can be calculated by adding the volume of the cylinder and the volume of the hemisphere at both ends. This tutorial will discuss how to calculate the volume of a given capsule in Java using different methods. Capsule volume formula The formula for capsule volume is as follows: Capsule volume = Cylindrical volume Volume Two hemisphere volume in, r: The radius of the hemisphere. h: The height of the cylinder (excluding the hemisphere). Example 1 enter Radius = 5 units Height = 10 units Output Volume = 1570.8 cubic units explain Calculate volume using formula: Volume = π × r2 × h (4

See all articles