mengzc
V2EX  ›  PHP

数组下不能使用连接符"."?

  •  
  •   mengzc · Apr 24, 2018 · 4555 views
    This topic created in 3119 days ago, the information mentioned may be changed or developed.
    echo "<".$row_user_server_ip['server_name'].">";
    这种情况下最后一个.会导致数组变量失效,如何处理?
    16 replies  •  2018-05-12 00:00:42 +08:00
    mengzc
    mengzc
    OP
    Apr 24, 2018
    1
    <和>同时存在会导致数组变量无法正确输出。
    jfcherng
    jfcherng
    Apr 24, 2018
    2
    你這是被瀏覽器認為是 HTML Tag 了吧
    master
    master
    Apr 24, 2018
    3
    R18
    R18
    Apr 24, 2018
    4
    我觉得吧是 $row_user_server_ip['server_name'] 为空,或为非字符串类型转化的过程中被转化成空?
    wkan
    wkan
    Apr 24, 2018 via iPhone
    5
    被当成 html 标签了
    chenxytw
    chenxytw
    Apr 24, 2018
    6
    数组变量失效是什么?
    Junjunya
    Junjunya
    Apr 24, 2018
    7
    @jfcherng @wkan 楼上说的被识别成标签是什么鬼…… PHP 语言怎么会直接出现在浏览器端???

    在 PHP 中 这种写法完全正常,没有被识别成标签这一说,很大可能是本来他这个变量就有问题。
    我的测试结果和 3 楼一样 这样写完全没有问题。
    jfcherng
    jfcherng
    Apr 24, 2018
    8
    @Junjunya 那請你解釋一下為何還必須 "<和>同时存在会导致数组变量无法正确输出。" ?
    jfcherng
    jfcherng
    Apr 24, 2018
    9
    而且這個節點只能發 PHP-CLI 的問題麼?我覺得我的猜測十分合理。
    zgx030030
    zgx030030
    Apr 24, 2018 via iPhone
    10
    其实就是被浏览器当成一个节点标签了,语法本身并没错,你可以右键看看源代码。
    Junjunya
    Junjunya
    Apr 24, 2018
    11
    @jfcherng 突然反应过来了…… 确实很可能是被当成浏览器标签了 ,我的锅
    3IOhG7M0knRu5UlC
    3IOhG7M0knRu5UlC
    Apr 24, 2018 via Android
    12
    楼主不要拼字符串了,找黑啊
    bitlaoyuan
    bitlaoyuan
    Apr 25, 2018
    13
    日常黑。

    我写了 10 年 PHP 了,一直这么写都没出过错。
    moonsola
    moonsola
    Apr 25, 2018
    14
    echo "&lt;".$row_user_server_ip['server_name']."&gt;";
    mengzc
    mengzc
    OP
    May 11, 2018
    15
    @bitlaoyuan 可是我测试确实是失效了。
    mengzc
    mengzc
    OP
    May 12, 2018
    16
    完整代码:
    foreach ($user_server_ip as $key => $value) {
    $sqlserver = "SELECT `server_name`,`server_ip` FROM server WHERE `id` = ".$value.";";
    $results_user_server_ip = mysql_query($sqlserver);
    while ($row_user_server_ip = mysql_fetch_array($results_user_server_ip))
    {
    echo "[".$row_user_server_ip['server_name']."]";
    echo $row_user_server_ip['server_ip'];

    echo "<br>";
    }
    }

    第 6 行 原来的是:echo "<".$row_user_server_ip['server_name'].">"; 为了对输出的值外左右加一个<>,结果测试有问题。所以换成了[ ]后正常。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1473 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 04:23 · PVG 12:23 · LAX 20:23 · JFK 23:23
    ♥ Do have faith in what you're doing.