Warning: preg_match(): Compilation failed:

 更新时间:2016年11月25日 15:52  点击:1706

warning: preg_match(): compilation failed: pcre does not support l, l, n, p, p, u, u, or x at offset 3 in f:wwwrootwww.111cn.nettest.php教程 on line 2

解决方法

preg_match("/^[x80-xff_a-za-z0-9]{3,15}",strname);

下面我们来看一款php正则中文实例

是用x表示十六进制数据的。于是,变换成如下的代码:

$str = "php编程";
if (preg_match("/^[x4e00-x9fa5]+$/",$str)) {
print("该字符串全部是中文");
} else {
print("该字符串不全部是中文");
}


提供一款js正则中文

var str = "www.111cn.net编程";
if (/^[u4e00-u9fa5]+$/.test(str)) {
alert("该字符串全部是中文");
}
else{
alert("该字符串不全部是中文");
}

php教程二维数组合并与元素值相加实例
*/
$arr_click = array(
    array('date' => '2010-10-01', 'click' =>'1'),
    array('date' => '2010-10-02', 'click' =>'2'),
    array('date' => '2010-10-02', 'click' =>'3'),
    array('date' => '2010-10-03', 'click' =>'4'),
);

$temp = array();

foreach ($arr_click as $k => $v)
{
    $key = $v['date'];
    $temp[$key] = isset($temp[$key]) ? $v['click'] + $temp[$key] : $v['click'];
}

foreach ($temp as $k => $v)
{
    $result[] = array('date' => $k, 'click' => $v);
}

var_dump($result);

//方法二

$arr_click = array(
array( 'date' => '2010-10-01', 'click' =>'1' ),
array( 'date' => '2010-10-02', 'click' =>'2' ),
array( 'date' => '2010-10-02', 'click' =>'3' ),
array( 'date' => '2010-10-03', 'click' =>'4' ),
);
foreach($arr_click as $v)
  if($r[$v['date']]) $r[$v['date']]['click'] += $v['click'];
  else $r[$v['date']] = $v;
$arr_click = array_values($r);

print_r($arr_click);

选简介一下json吧,json(网页特效 object notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于javascript programming language, standard ecma-262 3rd edition - december 1999的一个子集。 json采用完全独立于语言的文本格式,但是也使用了类似于c语言家族的习惯(包括c, c++, c#, java, javascript, perl, python等)。这些特性使json成为理想的数据交换语言。

json建构于两种结构:


“名称/值”对的集合(a collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。
值的有序列表(an ordered list of values)。在大部分语言中,它被理解为数组(array)。


php文件代码

<?php
$res['id'] = $_post['id'];
$res['name'] = "elar";
$res['age'] = "21";
$response = "hello this is response".$_post['id'];
echo json_encode($res);
?>

js代码

 

<script type="text/javascript">
function getjson() {
var xmlhttp;
try {
// firefox, opera 8.0+, safari
xmlhttp = new xmlhttprequest();
}
catch (e) {
// internet explorer
try {
xmlhttp = new activexobject("msxml2.xmlhttp");
}
catch (e) {

try {
xmlhttp = new activexobject("microsoft.xmlhttp");
}
catch (e) {
alert("您的浏览器不支持ajax!");
return false;
}
}
}

xmlhttp.onreadystatechange = function() {
if (xmlhttp.readystate == 4) {
//alert(xmlhttp.responsetext);
var str = xmlhttp.responsetext;
document.getelementbyid('show').innerhtml +=str;
//alert(str);
var obj = eval('('+ xmlhttp.responsetext +')');
//var obj = eval(({"id":"123","name":"elar","age":"21"}));
alert(obj.name);
}
}
var data = "id=123";
xmlhttp.open("post", "testjson.php", true);
xmlhttp.setrequestheader("content-type","application/x-www-form-urlencoded");
xmlhttp.send("id=123");
}
</script>
<input type="button" onclick="getjson()" value="按我!"/>
<hr />
<div id="show"></div>

匹配email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
匹配网址url的正则表达式:[a-za-z]+://[^s]*

下面看一实例

<body onload="f.a.select();">
<?php
echo 'a:'.htmlspecialchars($a);
echo '<br>a1:';
$a1 = eregi_replace('(^[_.][:alnum:]-]+@([[:alnum:]][[:alnum:]-]*.)+[[:alpha:]]{2,3}$)',' <a href="mailto:1">1</a> ', $a) ;
echo htmlspecialchars($a1);
echo "<br>a1:$a1";
echo '<br>a2:';
$a2 = eregi_replace('([[:alnum:]]+://([[:alnum:]][[:alnum:]-]*.)+[[:alpha:]]{2,3}([#?/][^#?/][:space:]][^[:space:]]*)?)',
   '<a href="1" target="_blank">1</a>', $a);
echo htmlspecialchars($a2);
echo "<br>a2:$a2";
// eregi('^[_.][:alnum:]-]+@([[:alnum:]][[:alnum:]-]*.)+[[:alpha:]]{2,3}$',$a) or die("not a email");
?>
<form name="f">
<input name="a" value="<?php echo $a; ?>">
<input type="submit" >
</form>
</body>


关于正则表达式常用数据

匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-za-z][a-za-z0-9_]{4,15}$

  评注:表单验证时很实用

  匹配国内电话号码:d{3}-d{8}|d{4}-d{7}

  字串1

  评注:匹配形式如 0511-4405222 或 021-87888822

  匹配腾讯qq号:[1-9][0-9]{4,}

  评注:腾讯qq号从10000开始

  匹配中国邮政编码:[1-9]d{5}(?!d)

  评注:中国邮政编码为6位数字

  匹配身份证:d{15}|d{18}

  评注:中国的身份证为15位或18位

  匹配ip地址:d+.d+.d+.d+

  评注:提取ip地址时有用

  匹配特定数字:

  ^[1-9]d*$    //匹配正整数

  ^-[1-9]d*$   //匹配负整数

  ^-?[1-9]d*$   //匹配整数

  ^[1-9]d*|0$  //匹配非负整数(正整数 + 0)

  ^-[1-9]d*|0$   //匹配非正整数(负整数 + 0)

  ^[1-9]d*.d*|0.d*[1-9]d*$   //匹配正浮点数

  ^-([1-9]d*.d*|0.d*[1-9]d*)$  //匹配负浮点数

  ^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$  //匹配浮点数

  ^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$   //匹配非负浮点数(正浮点数 + 0)

  ^(-([1-9]d*.d*|0.d*[1-9]d*))|0?.0+|0$  //匹配非正浮点数(负浮点数 + 0)

  评注:处理大量数据时有用,具体应用时注意修正

  匹配特定字符串:

  ^[a-za-z]+$  //匹配由26个英文字母组成的字符串 字串4

  ^[a-z]+$  //匹配由26个英文字母的大写组成的字符串

  ^[a-z]+$  //匹配由26个英文字母的小写组成的字符串

  ^[a-za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串

  ^w+$  //匹配由数字、26个英文字母或者下划线组成的字符串

方法很简单PHP字符串int是很容易,只要在变量前面加个(int)就成了,转换成字符也一样的哦。

$str = "10";  
$num = (int)$str;

//
 $str = "10";
 $num = (int)$str;
 if ($str === 10) echo "string";
 if ($num === 10) echo "integer";
 
 /*
 结果为
 integer
 */
 
 echo gettype($str); //string
 echo gettype($num); //integer
 

[!--infotagslink--]

相关文章

  • java 运行报错has been compiled by a more recent version of the Java Runtime

    java 运行报错has been compiled by a more recent version of the Java Runtime (class file version 54.0)...2021-04-01
  • 解决pycharm下载库时出现Failed to install package的问题

    很多小伙伴遇到pycharm下载库时出现Failed to install package不知道怎么解决,下面小编给大家带来了解决方法,需要的朋友参考下吧...2021-09-04
  • springboot定时任务@Scheduled执行多次的问题

    这篇文章主要介绍了springboot定时任务@Scheduled执行多次问题的解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-10-18
  • Warning: mysql_num_rows():

    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in F:\myweb\lzlj\cn.php on line 23 问题是你的mysql_query()时的sql出现...2016-11-25
  • php CURLOPT错误Warning: curl_setopt() [function.curl-setopt]:...

    在我们使用php curl函数时提示Warning: curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir...2016-11-25
  • Warning: mssql_query() [function.mssql-query]:

    Warning: mssql_query() [function.mssql-query]: message: 不能用 DB-Library(如 ISQL)或 ODBC 3.7 或更早版本将 ntext 数据或仅使用 Unicode 排序规则的 Unicode 数据...2016-11-25
  • ASP.NET网页显示LED字体的方法

    在我们开发网站时,或许需要显示一些非windows或是服务器安装的字体。在网站发布时,我们不可能把这些字符复制于服务器上,除非你拥有管理员级权限。在条件不允许的情况,但又要显示特殊字体时,只有参考下面的方法来实现...2021-09-22
  • PHP Warning: implode() [function.implode]: Invalid

    今天在做一个小的采集发布接口时发现使用implode函数老提示出错,但在网上找了一下解决不了,后来仔细看一原因是写法错误了,当然因这个问题也学了不少东西下面给各位整理...2016-11-25
  • MySQL Daemon failed to start错误解决办法

    这篇文章主要介绍了MySQL Daemon failed to start错误解决办法的相关资料,需要的朋友可以参考下...2017-01-22
  • Warning: mysql_fetch_array():

    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in $connect=mysql_connect("localhost","root","123") or die("无法连接...2016-11-25
  • php pdo连接报错Connection failed: SQLSTATE[HY000] [2002]

    下面我们来看看php pdo_mysql连接报错Connection failed: SQLSTATE[HY000] [2002] No such file or directory问题的解决办法。 错误 Connection failed: SQLSTAT...2016-11-25
  • 手机屏幕OLED为什么这么牛?

    近手机行业可不平静,各家厂商扎堆发布新品,像OPPO、华为还有小米等等。仔细观察的小伙伴们会发现,近段时间以来发布的新品的屏幕用的基本上都是OLED屏幕,而且似乎已经成为一种主流趋势。那么手机屏幕OLED为什么这么牛?下面我们来看看吧...2017-07-06
  • 16种C语言编译警告(Warning)类型的解决方法

    由于编译的警告各种各样,根本不可以一一罗列出来,下面只是列举出比较典型的十六种警告,还有一些警告,大家只要根据字面意思,就可以很快的查找出来,并解决之。希望对大家有所帮助。...2020-04-25
  • PHP warning Illegal offset type错误解决办法

    下面是一个朋友在使用yii时碰到PHP warning Illegal offset type错误问题的解决办法,有需要的朋友参考一下。 一句话,错在用对象作为数组的键。比如说,以下代码就会...2016-11-25
  • iPhone采用OLED是大势所趋?高价格或成绊脚石

    腾讯数码讯(文心)据University Herald网站报道,苹果将在备受期待的iPhone 8中引入OLED显示屏。这标志着另外一次创新的开始,因为之后所有型号iPhone都将配置OLED显示屏。...2017-07-06
  • Warning: mysql_free_result():

    我们的网站提示这样的错误,Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource 下面有三种情况: mysql_free_result的参数不对...2016-11-25
  • Warning: Invalid argument supplied for foreach()

    你是不是在用foreach 时出现这样的错误呢?Warning: Invalid argument supplied for foreach() 语法:foreach(array as value => value2) 实例: $Array =array(1,2,3,4...2016-11-25
  • Warning: chmod() has been disabled for security reasons in

    Warning: chmod() has been disabled for security reasons in D:\\freehost\\xxx\\WindFile.php on line 102根据英文的意思我们知道是出于安全原因,已被禁用的chmod()...2016-11-25
  • 诺奖得主:激光照明未来十年将取代LED

    随着产能过剩,加剧竞争,全国LED企业不少进入了发展瓶。6月25日,作为LED照明的标杆人物,2014年的诺贝尔物理学奖获得者中村修二出席了2016年中国·成都全球创新创业交易会,在接受媒体采访时,他的一番话可能为中国LED企业点亮前程。中村修二大胆预测,未来十年,激光照明将会代替LED照明。...2016-07-04
  • mysql Event Scheduler: Failed to open table mysql.event

    这篇文章主要介绍了mysql Event Scheduler: Failed to open table mysql.event,需要的朋友可以参考下...2016-04-21