扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
?phpfunction filter($elem){ return $elem['type'] == '空调';}$arr=Array( Array('id' = 1,'type' = '空调'), Array('id' = 2,'type' = '电视机'), Array('id' = 3,'type' = '空调'));$newarr = array_filter($arr, 'filter');print_r($newarr);exit;
创新互联是一家专注于网站设计、成都网站建设与策划设计,常山网站建设哪家好?创新互联做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:常山等地区。常山做网站价格咨询:13518219792
1、找到.在字符串中的位置,可以使用strripos函数
例如 strripos("1234.56", ".")
返回值为4
2、从第0个开始,前面 strripos 获取的返回值为个数,截取字符串,函数 substr
例如 substr("1234.56", 0, 4)
执行下就可以过去.左边的数字,strripos函数执行后最好先判断一下是否大于0,这样子程序比较严谨一些
第一个方法:新建一个空的数组,再循环该数组,如果distance10000,就压入新建的数组中。
第二个方法:使用array_filter()方法,
?php
$array = array(
array('id' = 1, 'distance' = 131),
array('id' = 2, 'distance' = 13100),
array('id' = 3, 'distance' = 13231),
);
function filterDistance($arr)
{
return($arr['distance'] 10000);
}
$array = array_filter($array, "filterDistance");
var_dump($array);
?
$conn = mysqli_connect('127.0.0.1', 'root', '', 'test');
mysqli_query($conn, "set names 'utf8'");
mysqli_query($conn, 'set character_set_client=utf8');
mysqli_query($conn, 'set character_set_results=utf8');
$res = mysqli_query($conn, 'select * from orders');
while ($row = mysqli_fetch_object($res)) {
//用正则取payment中的汉字到$chinese变量
preg_match_all("/[\x{4e00}-\x{9fa5}]+/u", $row-payment, $chinese);
//把preg_match_all匹配的$chinese数组转为字符串
$chinese = implode('', $chinese[0]);
//把原字段中的中文用正则删掉
$payment = preg_replace("/[\x{4e00}-\x{9fa5}]+/u", '', $row-payment);
//执行更新
$sql = "update orders set payment = '$payment' , zhongwen = '$chinese' where Id = '$row-Id' ";
mysqli_query($conn, $sql);
}
demo中的数据库是我新建的一个测试库test 表名orders 主键Id
实际使用需要先改成你的实际真实数据库信息
执行前
执行后
如果你会用 Linux 的命令 grep ,不用程序也很容易就能出来。
假设 test.txt 文件的内容是问题中的文字。
grep bb test.txt
就出来了。
如果想要写到别的文件,
grep bb test.txt bb.txt
当然用 PHP 也不难
?php
$arr = file('test.txt');
//print_r($arr);
$out = preg_grep('/bb/', $arr);
print_r($out);
?
用file把文件以数组的形式取出来,遍历数组元素,然后用strpos匹配,如果存在aa就unset这个数组元素,最后再将数组转化成字符串,写进文件,代码如下:
?
$file_arr = file("a.txt",FILE_IGNORE_NEW_LINES);
foreach($file_arr as $key = $value){
if(strpos($value,"aa") !== FALSE){
unset($file_arr[$key]);
}
}
$newfile = implode("\n",$file_arr);
file_put_contents("a.txt",$newfile);
?
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流