如何优雅地为程序中的变量和函数命名?
「你取的变量名太糟糕了」可能是程序员们互相吐槽的常规起手式,此外还有不写注释、不换行(换行?)、需求不明……
Phil Karlton:计算机科学领域有两个难题:一个是缓存失效,另一个就是命名。
好了好了,有了这个神奇的网站,今天我们来解决第一大问题,让我们和基于汉语拼音的变量名系统说再见吧。
网站地址:https://unbug.github.io/codelf/
GitHub 链接:https://github.com/unbug/codelf#codelf-for-vs-code
我们做了一些尝试,比如在搜索框中键入中文「残差」,搜索框下方会出现 Suggestions,列出了多个英文翻译。Suggestions 下方那片「五彩斑斓」默认为是包含第一个建议英文翻译的所有变量名和函数名。
点击其他建议翻译,下方「五彩斑斓」也会随之改变。比如点击「error」,搜索结果的变化如下所示。
你也可以选择自己喜欢的编程语言,比如 Python。
看看搜索结果的变化。
将鼠标指针放置在某个彩色框上,会出现「Search」、「Repo」、「Copy」、「Codes」四种选项。用户可以点击这些选项,使用对应功能。
点击「Search」就是基于当前命名搜索其它相关的命名。比如,在「residuals」上点击「Search」后结果如下所示。
点击「Repo」就是链接到使用该命名的代码所在的资源库。
点击「Copy」是复制该命名。
点击「Codes」可以查看使用命名的示例代码。
可以根据需要选择不同语言的示例代码。
据作者介绍,Codelf 的内部原理是:先到有道翻译 API 取中文的英文翻译,然后搜索 GitHub 取变量。该网站支持直接搜索中文,在搜索框键入中文后,Codelf 会提供查好的单词及其近义词,然后通过搜索 Github、Bitbucket、Google Code、Codeplex、Sourceforge、Fedora Project 上的开源项目的源码匹配出与这些词汇相关的变量名和函数名。当然,直接输入英文也是可以的,Codelf 会提供相关的命名。
php的输入语句是什么?
echo可以很灵活的输出要输出的东西,输出字符串,根其他字符结合来完成输出,例如:利用{}大括号来输出数组中的数据,利用定界符来输出大段的HTML,这一点很有用的。echo他不是函数,没有返回值,这一点根print不一样。
php存储数据怎么写?
PHP向MySQL数据库中写入数据有三个步骤:
1,PHP和MySQL建立连接关系
2,打开MySQL数据库
3,接受页面数据,PHP录入到指定的表中
1、2两步可直接使用一个数据库链接文件即可:conn.php
PHP怎么写变量?
首先我们来说说“变量”是什么?
这里我们将“变量”比喻为一个有名字的空盒子
如:有一个盒子名字为:A
变量的值就是盒子的内容
现在盒子是空的,没什么用。这时我们就需要给空盒子装点什么。
如:我们某一个女孩的年龄装在A盒子里。该女孩年龄为18
A = 18
盒子有了名字和内容才完整。变量也同样如此:
$A = 18
现在我们来测试:
<?php
$a = 18;
echo $a;
?>
运行以上代码:页面将显示18,及表示成功。
最后我们说说,变量的书写规则:
php变量开头是以:“$”
变量名:可以是字母 数字 “-”符号组成,数字不能作为开头名。
$123 这是错误的变量。$a123 这是正确的。
如何让PHP能够读取系统环境变量?
一、fpm模式
1、通过服务器传递
如在nginx的配置里设置:
fastcgi_param ENV_XXX 123456;
每次页面请求nginx都会将此变量传递给php,php可以通过getenv函数或$_SERVER全局变量获得。
2、通过fpm配置传递
fpm在每次启动时都会读取php-fpm.conf文件中的环境变量设置,如:
env[ENV_XXX]="test test"
或者让fpm读取系统环境变量,如:
env[ENV_XXX]=$ENV_XXX
注意此种方式要确保系统环境变量存在,且不被sudo禁用。
如果fpm是用sudo方式启动,默认sudo会禁用一些环境变量,可以通过以下方式放开限制:
vim /etc/sudoers
Defaults env_reset
Defaults env_keep = "ENV_XXX"
或者干脆放开所有限制:
Defaults !env_reset
最后,如果修改了php-fpm.conf中的设置需要重启fpm才能生效,同样php可以通过getenv函数或$_SERVER全局变量获得环境变量。
二、命令行模式
命令行模式限制较少,可以通过getenv函数或$_SERVER全局变量获取对当前执行用户有效的系统环境变量,同样要注意sudo的限制。