PHP print_r() 一个路径只是一个字母

PHP print_r() of a path is just one letter

我有这个名为“模拟”的关联数组 它有一个键“simulation_path”

我可以正确地 print_r $simulation 但我不能对路径做同样的事情 它只打印一个字母! 其他key对应的其他值都正确打印

        $simulation_id=$simulation[simulation_id];
            $container_id = $simulation[container_id];
            $fullPath = simulation[simulation_path];
            print_r("fullPath\n");
            print_r($fullPath);
            print_r("\n");

这是控制台上 $simulation 的 print_r()

[container_id] => 11
[container_name] => trivial
[container_path] => /home/stefanino/public_html/gcweb/docker/users/demo/Simulations/simulat
[user_id] => 1
[simulation_id] => 9
[date_id] => 3
[simulation_path] => /home/stefanino/public_html/gcweb/docker/users/demo/Simulations/simulat/Results/12_12_15_3
[simulation_date] => 2012-12-15

但是如果我打印 $simulation[simulation_path] 我得到:s

啊,我注意到在 chrome 控制台中,路径“/home/”的第一部分是红色的,而最后一部分(日期)是绿色的 我不知道这是什么意思,如果重要

你有几个问题。如果您不将密钥作为字符串传递,PHP 假定您指的是一个常量,但默认情况下,它 returns 如果常量未定义,则它是常量的名称。

你也有一个错字,在获取 simulation_path 时在模拟之前缺少 $ 符号。

你应该这样写:

<?php

   $simulation_id=$simulation["simulation_id"];
   $container_id = $simulation["container_id"];
   $fullPath = $simulation["simulation_path"];
   print_r("fullPath\n");
   print_r($fullPath);
   print_r("\n");