查找php馍用来推断是否串串返回值和方法 strpos很奇怪.

请看下面的语句:

echo "A1: ".(strpos("csd","c"))."<br>";   //0

echo "A2: ".(strpos("csd","c")>=0)."<br>"; //1

echo "B1: ".(strpos("csd","h",0))."<br>"; //

echo "B2: ".(strpos("csd","h",0)>=0)."<br>"; //1





//期望值是源串"abc"包括子串"a", 此处结果与期望值同样

if(strpos("abc","a")>=0)

{

    echo "a in abc"."<br>"; //a in abc

}

else

{

    echo "a not in abc"."<br>";

}

//期望值是源串"abc"并不包括子串"u", 此处结果与期望值相反

if(strpos("abc","u")>=0)

{

    echo "u in abc"."<br>"; //u in abc

}

else

{

    echo "u not in abc"."<br>";

}

//期望值是源串"a"比子串"abc"小,而且源串"a"并不包括子串"abc", 此处结果与期望值相反

if(strpos("a","abc")>=0)

{

    echo "abc in a"."<br>"; //abc in a

}

else

{

    echo "abc not in a"."<br>";

}

//期望值是源串"u"比子串"abc"小,而且源串"u"并不包括子串"abc", 此处结果与期望值相反

if(strpos("u","abc")>=0)

{

    echo "abc in u"."<br>"; //abc in u

}

else

{

    echo "abc not in u"."<br>";

}

//显示的结果

A1: 0

A2: 1

B1: 

B2: 1

a in abc

u in abc

abc in a

abc in u

定义和使用方法

strpos() 函数返回字符串在还有一个字符串中第一次出现的位置。

假设没有找到该字符串。则返回 false。

语法

strpos(string,find,start)
參数 描写叙述
string 必需。规定被搜索的字符串。
find 必需。规定要查找的字符。
start 可选。

规定開始搜索的位置。

PHP的这样的推断方法与 C#, JAVA的非常不一样.

php里是把源串不包子串。源串小于子串当做空值返回.

经过条件语句。if(strpos("abc","u")>=0) 和 if(strpos("u","abc")>=0), 值又为真了.

我认为这样的形式非常的怪异。刚開始学习的人和从其他语言(JAVA,C#)转过来学习php的人应该会感到非常困惑..

请教,这里,例如,我会推断 串"abc" 包括在 "a", 它由寮屋方法?

怪异php 语法, 求解!的更多相关文章

  1. c++给数组赋值

    c++的基础不牢啊.甚至是c语言也忘记了..所以以后遇到感觉怪异的语法都保存下来,没事翻翻看看 例一 void getSize(int n[]) //把数组名传给函数的形参时候 一维数组[]不用指定大 ...

  2. 【ASP.NET MVC 5】第27章 Web API与单页应用程序

    注:<精通ASP.NET MVC 3框架>受到了出版社和广大读者的充分肯定,这让本人深感欣慰.目前该书的第4版不日即将出版,现在又已开始第5版的翻译,这里先贴出该书的最后一章译稿,仅供大家 ...

  3. 构建移动Web应用程序的技术堆栈

    编写web应用程序时,有很多的技术决策.笔者最近回来编写现代Web应用程序,并希望总结一些曾经在开发周期过程中做了记录零散的想法.这篇文章是关于一套对笔者最近开发的项目有帮助的框架.笔者重温了一些最重 ...

  4. [译]GotW #4 Class Mechanics

    你对写一个类的细节有多在行?这条款不仅注重公然的错误,更多的是一种专业的风格.了解这些原则将会帮助你设计易于使用和易于管理的类. JG Question 1. 什么使得接口“容易正确使用,错误使用却很 ...

  5. C++的MFC,与C#的.NET

    转载:http://blog.sina.com.cn/s/blog_7f5bde5c0101hk5n.html 以下摘自各问答网站.博客论坛: [1]MFC早已过时,现在C++多数是用来编写底层方法而 ...

  6. Java语言与JVM中的Lambda表达式全解

    Lambda表达式是自Java SE 5引入泛型以来最重大的Java语言新特性,本文是2012年度最后一期Java Magazine中的一篇文章,它介绍了Lamdba的设计初衷,应用场景与基本语法. ...

  7. js 中实现sleep函数

    除了Narrative JS,jwacs(Javascript With Advanced Continuation Support)也致力于通过扩展JavaScript语法来避免编写让人头痛的异步调 ...

  8. vue.js基础知识篇(1):简介、数据绑定

    目录第一章:vue.js是什么? 第二章:数据绑定第三章:指令第四章:计算属性第五章:表单控件绑定代码链接: http://pan.baidu.com/s/1qXCfzRI 密码: 5j79 第一章: ...

  9. 探索Java语言与JVM中的Lambda表达式

    Lambda表达式是自Java SE 5引入泛型以来最重大的Java语言新特性,本文是2012年度最后一期Java Magazine中的一篇文章,它介绍了Lamdba的设计初衷,应用场景与基本语法.( ...

随机推荐

  1. JSP+Ajax站点开发小知识

    一.JSP基础 1.<select  name="love"  size="3">当中的size属性指定了列表框显示选项的条数.假设全部选项多于这个 ...

  2. HDU 4777 Rabbit Kingdom(树状数组)

    HDU 4777 Rabbit Kingdom 题目链接 题意:给定一些序列.每次询问一个区间,求出这个区间和其它数字都互质的数的个数 #include <cstdio> #include ...

  3. 39一个可以让你受益HTML5课程

    事不宜迟,本文作者是我们收集的在线学习HTML5资源.我们希望他们能够帮助你更好地学习HTML5. 不错啊! 只,说原作者40一个只有39一.由于第一5钍和8一是重复. 原文在此! 1. 五分钟入门H ...

  4. 关于WCF的引用,添加服务和添加web服务的区别

    原文:关于WCF的引用,添加服务和添加web服务的区别 本章内容主要是根据我做的实验来阐述这2种添加服务针对WCF的不同之处,我们按照示例一步一步来看. 如下是工程的结构: 该WCF服务是通过控制台程 ...

  5. CSDN上看到的一篇有关Spring JDBC事务管理的文章(内容比较全) (转)

    JDBC事务管理 Spring提供编程式的事务管理(Programmatic transaction manage- ment)与声明式的事务管理(Declarative transaction ma ...

  6. 数据库开发——参照完整性——在外键中使用Delete on cascade选项

    原文:数据库开发--参照完整性--在外键中使用Delete on cascade选项 原文: http://www.mssqltips.com/sqlservertip/2743/using-dele ...

  7. 创建在SQLServer 和 Oracle的 DBLINK

    dblink 当我们要跨本地数据库.訪问另外一个数据库表中的数据时,本地数据库中就必需要创建远程数据库的dblink,通过dblink本地数据库能够像訪问本地数据库一样訪问远程数据库表中的数据. 一 ...

  8. Objective-C语法简记学习

    開始学习iPhone开发了,尽管如今已经有了Swift,但我还是老老实实地学习Objective-C,鄙人入门的程序语言是C,后来学习了C#和Java,如今来学Objective-C,这篇仅仅是一些非 ...

  9. Scrum三头猪

    猪和鸡在过去进入业务合作.他们都打算开一家餐厅,它的售价火腿和鸡蛋. 这想了一下时间猪,我用他的肉,鸡只是用它生下的蛋.万一生意失败,我自己的命就没,,没有不论什么影响. 1. Scrum两类关系人 ...

  10. 【2014】【】辛星【php】【秋】【1】php构建开发环境

    **************************什么是开发环境*********************** 1.我们学习PHP,是使用它来做web用的,通俗理解,就是做站点. 2.站点的执行须要 ...