PHP 删除数组元素后重组数组
一般我们用完unset()
以后,数组元素对应的索引是不变的,这样有时候就会给我们带来一些麻烦,所以配合array_values()
使用来重组数组,这是在写C的时候突然想到没记下来的,就补充一下。
一般我们用完unset()
以后,数组元素对应的索引是不变的,这样有时候就会给我们带来一些麻烦,所以配合array_values()
使用来重组数组,这是在写C的时候突然想到没记下来的,就补充一下。
这是CSS3新增的两个属性,对于溢出相当有效,当年WP博客代码溢出大概也是这样解决的吧:
特地查了一下,当时用的是:word-wrap: break-word;
,故标题变长了。
他们的适用范围略有不同,实现换行只要word-break: break-word;
,而word-wrap
则是负责切割长字符串,大概是这个意思,CSS3的话,大家懂得。
word-wrap
扩展阅读:http://www.w3school.com.cn/cssref/pr_word-wrap.aspword-break
扩展阅读:http://www.w3school.com.cn/cssref/pr_word-break.asp
题目如下:
编写一个将输入复制到输出的程序,并将其中的制表符替换为\t,把回退符替换为\b,把反斜杠替换为\。这样可以将制表符和退回符以可见的方式显示出来。
首先我傻呵呵的被坑,因为这是在getchar()
练习中,很自然的想到了putchar()
,结果这货只能输出一个字符啊,怎么破,搜了一下,用printf()
就好了……感觉简直坑。
getchar()
与putchar()
其实感觉也挺神奇,因为这货是读/写一个字符,书的引言就说C语言没有处理整个数组或字符串的操作,暂时也只看到这个,感觉还挺好玩的。
书上给的代码是:
#include <stdio.h>
main(void)
{
int c;
c = getchar();
while (c != EOF) {
putchar(c);
c = getchar();
}
}
EOF到底是什么,从我接触至今困惑了好久,于是去搜了一下,在阮一峰的博客找到了答案,算比较好懂的,不得不说这是个好博客=A=
EOF在书上,看了两本(才两本=A=),解释都是这样的:
EOF , end of file, 文件结束
啥,为什么文件结束会有个值,他要拿来干嘛?
而且在C中以前尝试过输出,输出结果为-1
,这又是什么个情况?
本来我以为那些华丽的效果都是用JS或者jQuery做出来的,结果没想到在CSS3里,很方便的可以实现相似的效果,至少那些简单的没什么问题。
本来的hover和默认状态都是瞬间完成的改变,但通过transition
可以达成渐变的过程。
比如引入一个属性:
img{
transition: 1s height;
}
在《C程序设计语言》里看到这个,不大理解,就稍微自己解释了一下:
字符宽相当于固定占位,设定完之后将从右边开始对齐,有点像排队一样,比如设为%6d
如果6格被占满,剩下的人只能站着,也就是在右边延伸,而如果来了三个人,就从右边开始往左边的座位坐。
突然想到关于常量的问题。常量的作用域是全局的,也就意味着无论在哪里只要执行到定义常量,就能一直使用(包括函数内也不需要重复定义),不需要改变的量我们会首选常量。
常量名通常大写
如果使用一个没有声明的常量,常量名称会被解析为一个普通字符串,但会比直接使用字符串慢近八倍,所以声明字符串一定要加上引号
常量前不需要$
,用define()
函数来声明,如果只是要检查常量是否定义好了,用defined()
函数检查。
如define("CON_INT", 100)
,定义了一个名为CON_INT
的常量define()
还有一个可选参数,因为默认是区分大小写的,define("GREETING", "Hello World", true)
,设置为true的话就不区分大小写了。
常量不能被重新定义或者取消定义,只能是标量
define()
的扩展阅读:http://www.php.net/manual/zh/function.define.php
类中常量用const
关键词,在这里略有提及:http://codesky.me/archives/php-public-final.wind
const CONSTANT = 'value'
就行了,但不能通过实例对象来访问
关于介绍可见:http://v3.bootcss.com/javascript/#modals
button中的data-target="#myModal"
对应了模态框中的id="myModal"
,虽然不能在一个模态框上加载另一个模态框,不过同一个页面允许多个模态框,可是要注意的是上面所说的那部分不能重复,否则会唤起同一个model。
Math.random(); //该方法产生一个0到1之间的浮点数。
Math.floor(Math.random()*10+1); //1-10
Math.floor(Math.random()*24);//0-23
var now=new Date();
var number = now.getSeconds(); //这将产生一个基于目前时间的0到59的整数。
var now=new Date();
var number = now.getSeconds()%43; //这将产生一个基于目前时间的0到42的整数。
关于这点,math.random()
具体怎么实现我们不必在意,只要知道怎么用就行了。另外Math.random()
实际上取的是[0, 1),加上Math.floor()
向下取整,也就是取小于x的整数,在非负数范围内相当于舍去小数点,于是就能达到这个效果了