数组截取php
Ⅰ php 数组如何获取最后一个元素
在php里获取数组的最后一个元素,可以参考以下方法:
1、如果是序号数组,可以考虑使用Count获取元素总数-1:
<?php
//序号数组
$arr1=array('val1-1','val1-2','var1-3');
echo$arr1[count($arr1)-1].'<br/>';
?>
2、如果是键名数组,可以考虑使用end函数:
<?php
//键名数组
$arr2=array('name1'=>'val1-1','name2'=>'val1-2','name3'=>'var1-3');
echoend($arr2).'<br/>';
?>
一般不建议使用array_pop函数,原因在于执行这个函数后,虽然可以得到最后一个元素,但原数组的最后一个元素会被移除。
Ⅱ php截取数组!取数组长度的下标和值!只有一个数组,根据输入的值获取不同内容的数组
array_slice(array(1,2,3,4,5,6,7,8,9), 0, 5) 或者 array_slice(array(1,2,3,4,5,6,7,8,9), 0, 8)
Ⅲ PHP怎么随机获取数组里面的值
需要准备的材料分别是:电脑、php编辑器、浏览器。
1、首先,打开php编辑器,新建php文件,例如:index.php,并定义一个数组。
Ⅳ php从数组中截取元素用哪个函数
用array_slice函数,下面引用自PHP手册: array array_slice ( array $array , int $offset [, int $length [, bool $preserve_keys ]] ) array_slice() 返回根据 offset 和 length 参数所指定的 array 数组中的一段序列。 如果 offset 非负,则序列将从 array 中的此偏移量开始。如果 offset 为负,则序列将从 array 中距离末端这么远的地方开始。 如果给出了 length 并且为正,则序列中将具有这么多的单元。如果给出了 length 并且为负,则序列将终止在距离数组末端这么远的地方。如果省略,则序列将从 offset 开始一直到 array 的末端。 注意 array_slice() 默认将重置数组的键。自 PHP 5.0.2 起,可以通过将 preserve_keys 设为 TRUE 来改变此行为。 例子:$input = array("a", "b", "c", "d", "e"); $output = array_slice($input, 2); // returns "c", "d", and "e" $output = array_slice($input, -2, 1); // returns "d" $output = array_slice($input, 0, 3); // returns "a", "b", and "c" // note the differences in the array keys print_r(array_slice($input, 2, -1)); 最后连个输出:Array([0] = c[1] = d)Array([2] = c[3] = d)
Ⅳ php如何将一个数组中某一段的值剪切出来拆分成两个数组
<?php
$arr=array(1,2,3,4,5,6,7,8,9);
foreach($arras$key=>$value){
if($value>=6){
$arr1[]=$value;
}else{
$arr2[]=$value;
}
}
echo"<pre>";
print_r($arr1);
echo"<hr/>";
print_r($arr2);
echo"</pre>";
?>
结果如下
Array
(
[0] => 6
[1] => 7
[2] => 8
[3] => 9
)
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
)
也可以采用array_chunk() 函数
array_chunk() 函数把一个数组分割为新的数组块。
望采纳 Thx
Ⅵ PHP如何用数组截取字符串
$a_array=array(0=>"4318-2010008(02-20100426)",1=>"4318-2010008(01-20100316)",2=>"4318-2010005(05-20101214)");
foreach($a_arrayas$key=>$value){
//分割字符串
$val_explode=explode("(",$value);
$val_explode_a=explode("-",$val_explode[0]);
$val_explode_b=explode("-",$val_explode[1]);
$val_explode_b=explode(")",$val_explode_b[1]);
//取两个日期
$date_a=$val_explode_a[1];
$date_b=$val_explode_b[0];
echo"日期一$date_a,日期二$date_b<br/>";
}
不知道我理解错没错……
Ⅶ thinkphp 数组 如何割分。
thinkphp没有分割字符串,有截取字符串.
php自带函数可以分割字符串如下:
explode(separator,string,limit)
separator 必需。规定在哪里分割字符串。
string 必需。要分割的字符串。
limit 可选。规定所返回的数组元素的最大数目。
1
2
3
4
$text="1,2,3";
$lines = explode(",", $text);//这里使用逗号分隔
$string = "Hello world. Beautiful day today.";
$str= explode(" ", $string );//使用空格分隔
strtok(string,split)
string 必需。规定要分割的字符串.
split 必需。规定一个或多个分割字符。
1
2
$string = "Hello world. Beautiful day today.";
$token = strtok($string, " ");//用空格分隔
str_split(string,length)
string 必需。规定要分割的字符串。
length 可选。规定每个数组元素的长度。默认是 1。
print_r(str_split("Hello"));
thinkphp自带截取字符串如下:
对于英文字符可使用如下形式:
1
{$vo.title|substr=0,5}
如果是中文字符thinkphp提供了msubstr,用法如下:
1
2
function msubstr($str, $start=0, $length, $charset=”utf-8″, $suffix=true)//使用如下
{$vo.title|msubstr=5,5,'utf-8′,true}
msubstr函数说明如下:
msubstr($str, $start=0, $length, $charset=”utf-8″, $suffix=true)
$str:要截取的字符串
$start=0:开始位置,默认从0开始
$length:截取长度
$charset=”utf-8″:字符编码,默认UTF-8
$suffix=true:是否在截取后的字符后面显示省略号,默认true显示,false为不显示
Ⅷ php里如何把 数组里的指定元素给取出来
一、首先把数组赋予一个变量,如:
$arr=Array('0'=>'a','1'=>'b','2'=>'c');
二、取出数组的值
取第一个值:$arr[0]
取第二个值:$arr[1]
取第三个值:$arr[2]
取值的方法是通过引用下标号来访问某个值。
程序代码如下:
(8)数组截取php扩展阅读
设置 PHP 常量
设置常量,使用 define() 函数,函数语法如下:
bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
该函数有三个参数:
name:必选参数,常量名称,即标志符。
value:必选参数,常量的值。
case_insensitive:可选参数,如果设置为 TRUE,该常量则大小写不敏感。默认是大小写敏感的。
我们创建一个区分大小写的常量,,常量值为 "欢迎访问"的例子:
<?php
// 区分大小写的常量名
define("GREETING", "欢迎访问");
echo GREETING; // 输出 "欢迎访问"
echo '<br>';echo greeting; // 输出 "greeting"
?>
Ⅸ php如何获取数组的最后一个元素值
数组指针函数 current() - 返回数组中的当前单元 end() - 将数组的内部指针指向最后一个单元 prev() - 将数组的内部指针倒回一位 reset() - 将数组的内部指针指向第一个单元 each() - 返回数组中当前的键/值对并将数组指针向前移动一步 next() ...
Ⅹ php数组元素截取
$arr = array();//这是上面你的数组。
$result = [];//接收截取后的值
foreach($arr as $v){//对数组中的每一个值进行截取
$posi = stripos($v,'-');//找到位置
array_push($result,substr($v,$posi+1,6));//截取并压入数组
}
print_r($result);//转出数组
注:我不知道这年月份为何出现7位值?2010008???