在php中如何判断一个字符串中包含别一个字符串?

    可以用strpos函数来判断一个字符串是否在别一个字符串中出现。代码这样写:     if (strpos($a,'are') !== false) {         echo 'true';     }     注意用!== false,因为如果一个字符串出现在别一个字符串的开始位置,返回值为0,0做为一个偏移量返回,它是用效的,而真正没找到会返回boolean false,所以我们不明简单的用 !strpos($a, 'are').同时还要注意strpos区分大小写,如需进行对大小写不敏感的搜索,用 stripos() 函数。 ......

如何用php正确的定义"Content-type"为JSON

    从网上搜索,会发现有两种不同的方式来定义已加载PHP文件的Content-type为JSON。     第一种:header('Content-type: text/json');     第二种:header('Content-type: application/json');     那个用哪一种才是最正确,最科学的呢?     application/json是在RFC4627中正式注册的JSON的MIME类型,并列在互联网媒体类型列表中。我想用第二种才是正确的。application/json的默认编码为UTF-8,我们可以在声明中改为其他类型的编码,但要保注意提交和返回的编码一致性。否则可能产生乱码,例如中文。     而text/json是被RFC定义为废弃的。 ......

php删除数组中某一元素

    我们从数组中删除一元素,用以用unset,删除以后数组中就不再包括这个元素,而不是把这个元素设为null.     <?php     $x = array(1,2);     unset($x[0]);     var_dump($x);     ?>          output          array(1) {       [1]=>       int(2)     }     注意这样做数组的元素索引没有改变,假设从中间删除了某个索引对应的元素,会造成数组索引不连贯。 ......

mysql_*(或者说mysql扩展)被弃用的原因

mysql_*是一个成熟的东西,许多网站都用这个对mysql数据库进行操作(如请求mysql_query(),mysql_connect()函数或mysql_real_escape_string()),但为什么php高版本中要将它移除呢, 这是一个典型的问题。为了说明这个问题,在技术层面详细说明为什么使用mysql_ *函数不再推荐: 一.没有后续的开发支持。 二.不是面向对象的。  这好像不是一个好的理由,为什么非要面向对象呢? 三.mysql_*不支持:   1.锁定,异步查询   2.预处理语句或参数化查询(我想这一点非常重要)   3.存储过程   4.多条语句查询   5.事物 因为它已过时,所以在未来的代码中尽量少用它们。 用更清晰,更好的错误处理和引用外部数据的方法比用一个单独的函数调用,手动处理错误的支持就显得尤为重要。 ......

php的foreach工作原理

事先声明,我们讨论的不是foreach用来做什么,和如何使用它。我们要分析的是它的工作原理。而不是说怎样用他来循环数组。   很长一段时间我认为foreach循环的是数组本身。但是,许多人提到,它其实是把数组做为一个副本来操作,我也认为这是最终的结论.不过,我又对这个问题进行了重新的思考,并通过实际的测试发现, 事实上也不完全如此。 让我解释一下,从下面的例子中,我们将用一个数组看出它是如何工作的。 $array = array(1, 2, 3, 4, 5); //测试用的数组. //case 1 foreach ($array as $item) {   echo "$item\n";   $array[] = $item; } print_r($array); /* Output in loop:    1 2 3 4 5    $array after loop: 1 2 3 4 5 1 2 3 4 5 */ 这清楚地表明,我们不用源数组直接工作 - 否则循环将永远持续下去,因为我们是在循环过程中不断加入新的元素到数组上。再用一个例子说明: //case 2 foreach ($array as $key => $item) {   $array[$key + 1] = $item + 2;   echo "$item\n"; } print_r($array); /* Output in loop:    1 2 3 4 5    $array after loop: 1 3 4 5 6 7 */ 这将进一步验证我们的结论,我们正与在循环过程中的源数组的副本打交道,否则我们将在循环过程中看到修改后的值。但... 如果我们......
<<  7  8  9  >>
京ICP备14008139号-1