-
die() 函数输出一条消息,并退出当前脚本。 该函数是 exit() 函数的别名。查看全部
-
mysql_connect('locahost','root','') or die('数据库连接失败'); 这个问题我也想过很多次,忘了是哪次得到了让自己非常满意的答案,现在就把我认为的理由分享给大家 之所以 用 or 可以达到,当函数错误后,执行or后面的函数是因为: 1.逻辑运算的运算顺序是从左向右 2.or运算符的左结合性 3.or运算中,如果运算时有值为真了,则整个表达式为真,后面不需要运算 终合上面三个因素,当or左侧函数运行正常(返回非假值),则不会执行后面的函数 这里利用了or的这个特性,将die(终止并输出函数)用于此处,巧妙的实现了函数异常而报错的功能 根据上面的分析,想到 如果左侧函数就是返回假的函数,或者无返回值的函数,应该也是执行后面的函数 mysql_connect()执行错误,并不是这个函数本身执行错误了,如果是它本身执行错误是PHP的系统错误 它仅仅是返回了一个假值而已 顺便说一下在PHP中的假值都有哪些,除了这些都是真值 0 false array() null '' "" 零 假 空数组 NULL 空字符串 应该还有空对象,但不知道怎么表示 如果有疏漏,大家补充 似乎我说的还不够多,还有的地方需要再说一下。 使用die是为了终止程序,并输出错误,一般在我们学习的时候会使用这种方法,但在具体项目中很少这样用。 因为项目中即使报错,也不想使用白屏黑字去报错,都希望使用项目本身标准的报错页去报告 那么在or 的后面,很多人会使用自定义函数(方法)来报错、以及记日志等操作。 给个例子大家玩玩,这个例子也说明了print是有返回值的 [php] <?php function test(){ echo "0"; return false; } test() or print('1') or print('2'); ?> [/php]查看全部
-
正则表达式的基本语法 PCRE库函数中,正则匹配模式使用分隔符与元字符组成,分隔符可以是非数字、非反斜线、非空格的任意字符。经常使用的分隔符是正斜线(/)、hash符号(#) 以及取反符号(~),例如: /foo bar/ #^[^0-9]$# ~php~ 如果模式中包含分隔符,则分隔符需要使用反斜杠(\)进行转义。 /http:\/\// 如果模式中包含较多的分割字符,建议更换其他的字符作为分隔符,也可以采用preg_quote进行转义。 $p = 'http://'; $p = '/'.preg_quote($p, '/').'/'; echo $p; 分隔符后面可以使用模式修饰符,模式修饰符包括:i, m, s, x等,例如使用i修饰符可以忽略大小写匹配: $str = "Http://www.imooc.com/"; if (preg_match('/http/i', $str)) { echo '匹配成功'; }查看全部
-
什么叫正则表达式 正则表达式是对字符串进行操作的一种逻辑公式,就是用一些特定的字符组合成一个规则字符串,称之为正则匹配模式。 $p = '/apple/'; $str = "apple banna"; if (preg_match($p, $str)) { echo 'matched'; } 其中字符串'/apple/'就是一个正则表达式,他用来匹配源字符串中是否存在apple字符串。 PHP中使用PCRE库函数进行正则匹配,比如上例中的preg_match用于执行一个正则匹配,常用来判断一类字符模式是否存在。查看全部
-
字符串的截取 php中有非常多的字符串处理函数,其中就有字符串截取函数。 1、英文字符串的截取函数substr() 函数说明:substr(字符串变量,开始截取的位置,截取个数) 例如: $str='i love you'; //截取love这几个字母 echo substr($str, 2, 4);//为什么开始位置是2呢,因为substr函数计算字符串位置是从0开始的,也就是0的位置是i,1的位置是空格,l的位置是2。从位置2开始取4个字符,就是love。 2、中文字符串的截取函数mb_substr() 函数说明:mb_substr(字符串变量,开始截取的位置,截取个数, 网页编码) 例如: $str='我爱你,中国'; //截取中国两个字 echo mb_substr($str, 4, 2, 'utf8');//为什么开始位置是4呢,和上一个例子一样,因为mb_substr函数计算汉字位置是从0开始的,也就是0的位置是我,1的位置是爱,4的位置是中。从位置4开始取2个汉字,就是中国。中文编码一般是utf8格式查看全部
-
构造函数:再php5中,使用__construct(){}函数代表构造函数,在创建对象时,自动调用该函数,不需要人为的调用,为了,所以在程序中一般使用构造函数做一些初始化任务,比如数据库连接等,为了向下兼容,如果类中,没有__construct()函数,php会在创建对象时自动调用通类名称相同的函数。 析构函数:析构函数,是php5中新增加的,会在对象被销毁前自动调用的函数,一般做一些释放资源等工作查看全部
-
\\0和$0代表完整的模式匹配文本查看全部
-
可以使用imagesetpixel绘制点来实现噪点干扰,但是只绘制一个点的作用不大,因此这里常常会使用循环进行随机绘制。查看全部
-
难点: $patterns = array ('/(19|20)(\d{2})-(\d{1,2})-(\d{1,2})/', '/^\s*{(\w+)}\s*=/'); $replace = array ('\3/\4/\1\2', '$\1 =');//\3等效于$3,\4等效于$4,依次类推 echo preg_replace($patterns, $replace, '{startDate} = 1999-5-27'); //结果为:$startDate = 5/27/1999 //详细解释下结果:(19|20)表示取19或者20中任意一个数字,(\d{2})表示两个数字,(\d{1,2})表示1个或2个数字,(\d{1,2})表示1个或2个数字。^\s*{(\w+)\s*=}表示以任意空格开头的,并且包含在{}中的字符,并且以任意空格结尾的,最后有个=号的。查看全部
-
PHP具有很多异常处理类,其中Exception是所有异常处理的基类。 Exception具有几个基本属性与方法,其中包括了: message 异常消息内容 code 异常代码 file 抛出异常的文件名 line 抛出异常在该文件的行数 其中常用的方法有: getTrace 获取异常追踪信息 getTraceAsString 获取异常追踪信息的字符串 getMessage 获取出错信息 如果必要的话,可以通过继承Exception类来建立自定义的异常处理类。查看全部
-
获取字符串的长度 php中有一个神奇的函数,可以直接获取字符串的长度,这个函数就是strlen()。 例子如下: $str = 'hello'; $len = strlen($str); echo $len;//输出结果是5 strlen函数对于计算英文字符是非常的擅长,但是如果有中文汉字,要计算长度该怎么办? 可以使用mb_strlen()函数获取字符串中中文长度。 例子如下: $str = "我爱你"; echo mb_strlen($str,"UTF8");//结果:3,此处的UTF8表示中文编码是UTF8格式,中文一般采用UTF8编码查看全部
-
去除字符串首尾的空格 PHP中有三个函数可以去掉字符串的空格 trim去除一个字符串两端空格。 rtrim是去除一个字符串右部空格,其中的r是right的缩写。 ltrim是去除一个字符串左部空格,其中的l是left的缩写。 例子如下: echo trim(" 空格 ")."<br>"; echo rtrim(" 空格 ")."<br>"; echo ltrim(" 空格 ")."<br>";查看全部
-
字符串的连接 PHP中两个字符串如何连接呢,比如我有个字符串$hello='hello',还有一个字符串$world=' world',我想将这两个字符串连接在一起,跟世界打个招呼。 PHP中用英文的点号.来连接两个字符串。 好了,我们连接一下,前面提到的两个字符串跟世界打个招呼吧:) $hello='hello'; $world=' world'; $hi = $hello.$world; echo $hi;//我们可以用echo函数输出一下这个字符串连接。查看全部
-
单引号和双引号的区别 在PHP中,字符串的定义可以使用英文单引号' ',也可以使用英文双引号" "。 但是必须使用同一种单或双引号来定义字符串,如:'Hello World"和"Hello World'为非法的字符串定义。 单引号和双引号到底有啥区别呢? PHP允许我们在双引号串中直接包含字串变量。 而单引号串中的内容总被认为是普通字符。 比如: $str='hello'; echo "str is $str"; //运行结果: str is hello echo 'str is $str'; //运行结果: str is $str查看全部
-
字符串介绍 PHP开发中,我们遇到最多的可能就是字符串。 字符串变量用于包含字符串的值。 一个字符串 通过下面的3种方法来定义: 1、单引号 2、双引号 3、heredoc语法结构 基本用法如下,后面的节还会详细进行介绍使用技巧,这里只介绍用法: 单引号定义的字符串:$hello = 'hello world'; 双引号定义的字符串:$hello = "hello world"; heredoc语法结构定义的字符串: $hello = <<<TAG hello world TAG;查看全部
举报
0/150
提交
取消