补充笔记

mysql语句中, 为什么有的时候可以直接按回车就提交了, 而有的时候, 按回车去换行了?

  • 这是因为, mysql会检查当前语句的末尾, 有没有分号, 看这条语句数否输入完了, 如有分号,就认为输入完毕了, 这时候回车就被提交了;
  • 反之, 如果没有分号, 就认为还没有输入完,于是 这时候回车就被当作输入内容了, 而不是提交,从而被 换行了.

在tp中, 获取一条记录, 可以使用查询find, 或getField方法, 但是通常使用 find方法, 然后通过 find 方法获取的 一维数组来 提取字段值, 而getField获取的值不好提取出来.

### jquery中, click的回调函数 动作 出现错乱? 1. 这种 click中的 回调函数, 是一个闭包函数, 由于 闭包函数 可以访问 外部的 变量( for 中的 循环变量, 和 $('.同一个类选择器')的 隐含多个对象的隐含循环 )

关于echo中使用赋值?

echo '本班科任老师: '. $jsname = \(ret[\)i]['jsname'].'
';
dump (array('jsname'=>\(jsname, 'class'=>\)curClass, 'pjstud'=>$stud));

要注意,如果 echo 后面 一个 变量的时候, 这个变量又使用 等于的方式, 那么最后, 等号最后的所有内容 , 都将赋值给这个变量, 而不是只是 输出.
所以 , 这里的 $jsname 的值实际上就是: "张三
" , 而不是只是 张三, 但是数据表中是没有 '张三
'这个字段值的. 这就是为什么 拿出去可以查询得到值, 而拿进来却得不到值的原因.

========================

关于标签和标签体中变量是否加$符合?

在 tp的模板标签中, 标签内部 的变量名name等 都不加 $ 符号的, 而在 标签体 中 , 要使用变量, 则要加 $ , 并且最好要使用 大括号: 比如: {$name['foo']}
这是因为, 标签中的变量名是作为标签属性 的值 来解析的,模板引擎在转换解释时自动转换成变量,而标签体则是原样解释.

foreach中 , volist等中 , 那个 循环变量 $k, $i的作用 还是很大的! 比如在 某些 需求或场合中, 不只是 要输出 某一个 二维数组/一维数组, 同时 还要 输出 其他
相关的 一维/二维数组, (它们的 个数是相等的,而且下标有对应关系! ) 此时, 就可以对其中 一个变量 使用 foreach name= item= 进行遍历, 对另外的变量使用 循环变量进行 遍历

要注意的是 volist 有默认的循环遍历$i, 而foreach没有, 需要显示的设定 循环变量: <foreach .... key="i/k/j"> 在标签体中使用 : $k...遍历

================================================

关于php中的gd2库绘图的问题.

imagecreate, 是基于调色板 256色的画布创建函数, 只有8位颜色深度. 而创建真彩色的函数是: imagecreatetruecolor??
本身gd库提供了一些php的绘图函数, 这些绘图函数本身是以*.php格式(底层是c)文件存在的, 绘图的单位是 像素px

像素是将屏幕尺寸分成多少等份, 每一个等份就是 一个像素. 所以, 像素是相对单位, 是密度单位, 不是长度单位, 不是像m, dm, cm,mm之类的长度值. 所以它没有固定长度. 对于同一个尺寸的屏幕, 像素不同,那么单位长度所包含的点/份数也不同, 因此相同像素值的 绝对长度 也不同.

php的绘图函数中, 有两类函数, 一类是 "赋值"类的函数, 是用来赋值/设置 颜色等的, 它们有返回值, 需要使用 foo_color = imagecreatecolor(...)的赋值形式来写, 比如: imagecreatecolor... 另一类才是 真正用来绘图绘制的, 是过程 语句, 是不需要用赋值 形式来写的, 直接调用函数(或者函数没有返回值), 比如: imageline(...)

\(i的循环值, 通常来说的惯例, 是从 0 开始 递增增大, 但并不总是这样的, 有的时候, 需要从大 递减的,特别是当\)i本身要在循环语句中使用时, 所以, 到底$i是递增还是递减, 要根据实际情况来定.

在php文件中, 要注意空格 / 空行的使用:

  • 如果是在 <?php ... ?> php标签内部, 那你可以随意的使用 空格或 空行, 因为这些空格和空行 并不会输出到html中, 它要经过 php引擎解释处理后才输出.
  • 但是, 你在 <?php ... ?> 标签外 所加的空格或 空行 会被当作输出内容, 直接/马上 输出到html文件中的, 所以, 在php标签外部的空格或空行 , 要谨慎的书写,不能随意的添加的,比如, 你要在php文件中绘图作为img标签的 src来源, 就不能在绘图php文件中的 php标签外添加空格 或 空行, 否则就会报错! (相当于jpg, png等图片文件 的源码 在它的前面加一个空格,而引起图片损坏的情况)

some animal and plant species cannot accommodate to the rapidly changing conditions. 有些种类的动植物不能适应迅速变化的环境.
populate, (人口; 居住...), popular(大众的...流行的...)它们是三个音节
而 pollute(污染) 是两个音节.

php manual绘图函数, JPGraph绘图框架库
凡是src请求的, 比如img标签 src=...请求图片, 请求js文件等, 都是http请求(而且这种src请求的地址可以是本地的,也可以是远程网络的), 请求图片地址的,都是可以传递id值, 等用以区别的符号的. 这样就可以让服务器认为是不同的请求地址或请求资源(是请求的另外一个图片或资源),从而重新进行绘图,获得变化的/更新的图片
所有的绘图,都是在服务器端的某个php文件中生成,存放在服务器的内存中,然后你的src就是去请求/ 去访问的这个php绘图文件的, 从而获得图片, 要注意在php文件中要告诉浏览器的资源类型是image/png或jpg等而不是传统的 text/html类型,避免浏览器解析出错.

============================================

两个单词的辨析:
evil [ivl] 表示邪恶的,坏的; 而另一个单词: veil 将v和e交换一下位置, 则是 [veil], 表示 "面纱,幕布,遮盖物", 比如: veil of ignorance : 无知之幕 Rowls John <<正义论>>
appall: [2'p2l]: vt. 使惊骇, 使胆寒. appalling, appalled. 引申的意思就是: "非常的/非常地/极其地"
ignore [ig'n2:], 忽略,漠视,不管. 但是 , ignorance: 的意思则有些变化了: 是"无知, 愚昧; 不知道",
His ignorance is appalling. Ignorance of the law is no excuse. [ik'skju:z] 不懂法律不能成为借口.
That was an appalling waste. an appalling death rate. When will this appalling war end?

regress: "退化; 退步; 逆行" regressive, regressand. regression analysis: 回归分析; regression coefficient.
they would not regress to pre-technological tribalism
she claims to be able to regress to the Roman era.
I regressed Sylvia to early childhood.

Hugh: [hju:], 休, Hughes[hju:z]修斯
As Hugh grew older, she had less influence and couldn't control him

vim本身内置了 拼写检查的功能, 打开拼写检查的开关是: set spell, 或者关闭, set nospell, 查看拼写的命令是 : [s, ]s其中, [,]可以认为是: "前一个/后一个, 上一个/下一个, 减小/增大"的对应含义. 拼写建议是: z=, 也可以将某个错误的单词, 加入到自定义的字典中, 撤销字典的命令分别是: zg, zug/ 而要给出拼写建议的命令是: z=

根据不同的用户类型, 输入的账户类别, 判断出不同的权限级别, 让后台服务端程序直接重定向到不同的页面.

vim的单词, w,b等命令,通常来说, 单词就是以 字母开头的字符串. 但也不全是, 有些运算符号也可能 被作为 "单词开头"
理解vim的 text-object模式, 这种 文本对象 模式的对象可以是单词, 段落, 括号等等, 支持 d, c, y等命令, 也支持a, i等范围词. 如果一个单词前面有空格,则dw将只是删除空格, 而daw将删除空格和其后的单词.

vim的替换确认?
使用 c扩展/附加命令, 这里的c表示: confirm确认的意思.
比如: %s/abc/ABC/gc, 就会把abc替换成ABC, 并在每次替换前询问,y就是yes替换, n是no不替换跳过, 是不再继续替换退出替换操作, a是all 表示剩下的全部替换.

要提取网页的 css背景图片, 要通过 firebug的css来获得, 即使背景图片是类似/public/img...之类的地址, 也可以在地址栏中在/public...地址的前面加上 服务器域名地址就可以了.

在程序中的数字, 最好是 先赋值给变量名, 然后再引用变量名. 不要直接写可以变化的数据为具体的数字.

vim的光标位置: 通常只是记录文件改变/的位置, 不会记录光标移动的 位置, 可以用 ctrl+i, ctrl+o 来向前或向后进行跳转?

GD2库用来生成验证码?

  1. 基本上用dnf install php-gd这一条命令就可以安装gd库了, 在php -i中看到gd节就表示安装 & 链接成功,可以使用了
  2. gd库的函数基本上都是 由 image 打头的, 第一个参数, 都是 一个资源符号: resource $img.
  3. 输出内容可以放在 最后要输出时, 也可以放在最前面;
  4. 绘图时, 因为可能要做多个图形,多个步骤, 所以并不是马上就输出了的, 而是先保持在内存中, 最后统一由 'imagepng($img)' 这个语句来进行输出的
    所以, 记住 imagepng和 imagedestroy函数是挨着而且成对使用的
  5. 关于颜色: gd绘图默认采用 已定义的 第一个颜色做背景色(即使你没有用imagefill), 默认采用前面定义了的 第一个 颜色来绘制图形前景色. 但是至少要定义一个 颜色, 否则会报错!
    最好是显示的指定绘图颜色.
// gd2库生成图像的默认单位是像素,不需要带单位,除非你用语句改变默认单位,比如mm等
//  也可以放在最前面的 header('Content-type:image/png'); 
$img_height = 100;
$img_width = 300;
$img = imagecreate($img_width, $img_height);
// gd2库做图像,因为可能同时有多个图像,所以很多语句或函数中都有$img/ 这个指定的图像 这个参数.
$bgcolor= imagecolorallocate($img, 0,0,0);
$white=imagecolorallocate($img, 255,255,255);
imagefill($img, 0,0, $bgcolor); // bgcolor可以是$black,也可以是$white.

// imagestring($img, 50, 300, 100, '123345', $black);
// 因为imagestring好像是只用来生成西文字符串, 不支持中文字体和utf-8, 更多的是使用imagettftext()来绘制字符串

$str = '验证码内容';
$font_size = 50;
$roll = 0;
$x = 50;
$y = 75;
$ttf = 'simli.ttf';  // 这样写表示是放在跟当前文件同一位置

imagettftext($img, $font_size, $roll, $x, $y, $ttf, $str);    // 参数顺序是: 字号, 角度, 起始位置, 字体, 字符内容)
header('Content-type:image/png');  // 记得以图片形式输出
imagepng($img);
imagedestroy($img);
exit();

这样就输出一个二维码图像? 验证码图像了....

在英语中,主谓宾的单复数, 只管主语和谓语的单复数匹配, 而不管宾语的单复数. 比如主语和谓语可以用复数,而宾语可以用单数.

slum housing, slum districts
The slums are a reproach to London.

======================================

mysql的int(4)数字4表示什么?

整数, signed,unsigned只能用来来修饰整数: 包括极小整数tinyint, 较小整数smallint, 中等大小的整数mediumint, 标准整数int3个字节,bigint大整数.只要是int, 不管后面的数字是多少,它们的存储范围都是相同的,比如 int(4)和int(11)的存储范围都是一样的
int(Wide)数字W只是用来表示 显示宽度,而且只有在字段 设置了 描述属性 zerofill的时候才有效. 就是说, 如果字段没有设置 zerofill的时候写不写宽度W 都是一样的,写了宽度也没有用. 只是当设置了字段zerofill的时候,当显示的数字 "宽度/位数"少于Wide的时候, 左边会补0显示. 但是如果数字本身就超过了Wide, 则完整显示数字,Wide就无效了.
使用场合: 一般是在 固定位数的数字'字符串',比如考号; 或月份, 天数/日期的时候.

什么叫mysql定点/浮点数? float和 decimal的类型的 区别: 参考: https://www.jb51.net/article/109363.htm, https://www.cnblogs.com/gulibao/p/5416245.html

所谓mysql的定点和浮点数,是指, 数字的小数点后的位数 是 可以改变的, 还是固定的. 小数点的位置(从数字的右边/末尾看)是固定不变的还是可以变化的?
浮点数 float/double 在没有指定 精度和标度的时候, 按实际的数值显示; 如果指定了精度和标度, 则按四舍五入的方式显示, 无论怎样都不会出错(结果可能稍有误差);
而定点数, 如果没有指定

解决bash shell 假死的情况 参考 https://www.cnblogs.com/guochaoxxl/p/10428991.html

linux的软件/文件都是按类别分开放, 而不是按某个软件放在一起的, /usr/libexec是放的可执行的库/连接/类的实现等. 比如/usr目录中就有: bin, sbin, include, lib,libexec, share等, 如果是自己安装的软件则全部都放在/usr/local目录中, 然后分门别类的放在其下的/usr/local/bin, sbin, lib,..等目录中.

================================================

php命令的 -i 参数就是 调用的 phpinfo(), 就是 php information. php的配置相当于 php.ini的结果. 包含了很多节. 所以可以查看 gd库等. 而php -m (modules)是表示载入了哪些模块. 查看它的模块是在:/etc/php.d的目录下对应的 "extension扩展"配置文件中,比如: 20-gd.ini

; enable gd extension module
extension = gd.so

credit的含义很多:
成绩/分数; 佘帐....
i didn't give you credit for such skill; 信任, 信用;
a man of credit; 名望,声望;
a credit to sb, belongs to sb's credit; 功劳/勋绩; (比如软件的 credits)
i'd love to take credit for such decision; 赞扬,赞许;
such a student is a credit to his class; 荣誉;
no credit, on credit: 佘账, 不佘账(现金交易)

======================

typically: y发[i] 典型的, 一如既往的,"看嘛,经常这样的”
indirect: 间接的,迂回的...
Joan's answer is typically indirect.

large求排在前面的第几个大的数: large(b1:b10, {1,2,3})
row()是返回单元格或区域的行号
indirect是简介引用,就相当于把单元格的地址作为一个变量一样,参数 “字符串”不是直接作为字面literal字符串,而是作为

单元格地址变量,
返回该地址所指向的单元格内的值

windows是微内核,用户自己添加的硬件驱动和软件的系统服务不是写在内核中的,是通过外围注册、添加到:

Hkey_Local_Machine/system/currentControlSet/services/....中的,
而linux是宏内核,通常的硬件驱动都是写在内核中的,一般用户不会重新编译内核,不会允许用户往内核中加东西。

posted @ 2019-08-10 11:44  noitanym  阅读(310)  评论(0编辑  收藏  举报