V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
supersu
V2EX  ›  问与答

请教一下各位 v 友, PHP 像 shell 一样在变量前面要加$符,但为啥又不像 shell 一样只在访问变量时才加呢

  •  
  •   supersu · 2018-03-15 20:30:01 +08:00 · 1627 次点击
    这是一个创建于 2446 天前的主题,其中的信息可能已经有所发展或是发生改变。
    虽然有历史原因但后来咋不找机会改改呢(4.0 之前应该改起来影响比较小,还是说没这个必要呀),这样代码会清爽不少, 至少同样的代码看起来是这样的~
    6 条回复    2018-03-16 09:49:15 +08:00
    mario85
        1
    mario85  
       2018-03-15 23:04:20 +08:00
    PHP 仿的是 Perl,不是 shell
    czzhengkw
        2
    czzhengkw  
       2018-03-15 23:22:14 +08:00
    语法习惯的问题,熟悉一下即可
    viko16
        3
    viko16  
       2018-03-15 23:23:48 +08:00 via Android
    那个“我们每个变量都是钱”的梗…
    supersu
        4
    supersu  
    OP
       2018-03-15 23:40:30 +08:00
    @czzhengkw #2 嗯呐的确要好好熟悉熟悉了,本来以为之前写过一段时间的 shell,现在写 php 应该不用过度太久,可这两天定义变量时没加美元符号,看着 ide 的红色波浪线一脸无辜半天才意识到是语法的问题。。
    msg7086
        5
    msg7086  
       2018-03-16 02:26:37 +08:00
    因为不能改。不加$就不是变量而是常量,你改了那常量就得全改了。

    而且 PHP 4.0 ?那货都快 20 年前了。
    supersu
        6
    supersu  
    OP
       2018-03-16 09:49:15 +08:00
    @msg7086 #5 嗯呐也是哦,常量的访问不需要加$符号,如果改了的话是有点冲突,不过感觉不加的话应该可以实现,因为常量的声明不是通过’=‘的,不知道是不是因为第一门脚本语言使用的是 shell,有点先入为主,感觉 Php 即使是常量,声明的时候继续用 define(), 而在访问常量的时候改成加$符号。话说回来,覆水难收,的确是不能轻易改。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5678 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 09:03 · PVG 17:03 · LAX 01:03 · JFK 04:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.