Php 如何拆分两个字符的字符串并将其分配给单独的变量?
我想使用子字符串从数组元素中拆分两个字符 例如,来自数组元素Php 如何拆分两个字符的字符串并将其分配给单独的变量?,php,arrays,json,split,Php,Arrays,Json,Split,我想使用子字符串从数组元素中拆分两个字符 例如,来自数组元素rank\u tier的数据是52 我想将5分配给$firstnumber和2分配给$secondnumber 我的错误代码是 遇到一个PHP错误 严重性:警告 消息:substr()要求参数1为字符串,数组给定 我的PHP代码 <?php $url = '#'; $content = file_get_contents($url); $ranktier = json_decode($content, tr
rank\u tier
的数据是52
我想将5
分配给$firstnumber
和2
分配给$secondnumber
我的错误代码是
遇到一个PHP错误
严重性:警告
消息:substr()要求参数1为字符串,数组给定
我的PHP代码
<?php
$url = '#';
$content = file_get_contents($url);
$ranktier = json_decode($content, true);
echo $ranktier['rank_tier'];
$firstnum = substr($ranktier, 1);
echo $firstnum;
$secendnum = substr($ranktier, 1);
echo $secendnum;
?>
您的字符串是$ranktier['rankt_tier'],因此您应该将字符串放入substr()。此处缺少一个变量。 而不是
echo $ranktier['rank_tier'];
这应该是
$ranktier = $ranktier['rank_tier'];
$firstnum = substr($ranktier_num,0,1));
$secendnum = substr($ranktier_num,1,1));
$ranktier
是一个数组
假设$ranktier['rank\u tier']
是一个字符串52
,您只需通过“偏移量”访问这两个字符即可
此任务不需要任何函数
如果52
还不是字符串,请将其转换为一个字符串
$num = (string)$ranktier['rank_tier']; integer 52 becomes "52"
$firstnum = $num[0]; // 5
$secendnum = $num[1]; // 2
Message:substr()希望参数1是字符串,数组给定
为什么要对数组使用substr
?它的后缀str
清楚地表明它应该用于字符串。52
是数组吗?听起来像一根弦。如果它是一个数组,则在其索引处访问它。其明显的$ranktier是一个数组substr需要一个字符串,因此错误
$firstnum = $ranktier['rank_tier'][0]; // 5
$secendnum = $ranktier['rank_tier'][1]; // 2
$num = (string)$ranktier['rank_tier']; integer 52 becomes "52"
$firstnum = $num[0]; // 5
$secendnum = $num[1]; // 2