我有一个如下数组,我将其放入一个名为$ testcoords
的数组中array (
0 => '\'263',
1 => '252',)
我想提取数值并对其进行操作,然后将它们放回字符串中。我正在尝试使用以下代码:
$tc2 = explode(":",$testcoords);
$tcx = (int)(trim($tc2[0],"'\'");
$tcy = (int)(trim($tc2[1],"'");
$tcx2 = (($tcx)*(600/386));
$tcy2 = (($tcy)*(600/386));
$xtrans = (string)$tcx2;
$ytrans = (string)$tcy2;
到目前为止,我知道修剪函数有效 - 只是(trim($ tc2 [0],“'\'”)或(trim($ tc2 [1],“'”)返回我的数值两个字符串。
现在我要做的是取这些数值,转换为我试图与trim函数结合的整数。一旦它们是整数,我想转回字符串并发布结果。
当我尝试这样做时,我没有得到任何结果。提升修剪数据的步骤很好。
例如,如果我只是
$tcx = (trim($tc2[0],"'\'");
$tcy = (trim($tc2[1],"'");
对于上面列出的数组,并回显结果,我的回复中得到263和252。
感谢关于如何完成其余任务的任何指示。
答案 0 :(得分:0)
这是一个语法错误。您没有认识到这一点,因为您已禁用错误报告。您可以使用php.ini设置display_errors=1
或log_errors=1
以及error_reporting=E_ALL
这样的设置来执行此操作。您也可以通过发出以下命令在脚本中执行此操作:
ini_set('display_errors', 1); // for development
ini_set('display_errors', 0); // for production (display_errors would be a security risk)
ini_set('log_errors', 1); // for both development and production
ini_set('error_reporting', E_ALL);
错误:转换为int时,您一直缺少右括号。 )
使用此:
$tcx = (int)(trim($tc2[0],"'\'")); // <-- note the second closing ')'
$tcy = (int)(trim($tc2[1],"'"));
进一步注意,这可以通过
简化$tcx = (int)(trim($tc2[0],"'\'"); // <-- note the second closing ')'
$tcy = (int)(trim($tc2[1],"'");
答案 1 :(得分:0)
在trim
$tcx = (int)(trim($tc2[0],"'\'");
$tcy = (int)(trim($tc2[1],"'");
将这些更改为:
$tcx = (int)trim($tc2[0],"'\'");
$tcy = (int)trim($tc2[1],"'");
此外,打开error_reporting进行开发时,您会看到明确指出的错误。