今天学到了PHP分割字符串:explode("xx","??");xx规定在哪里分割字符串,??是将要被分割的字符串javascript
json,先后端交互,示例代码:php
function getArray() { var arr = ["Jarry",23, ["www.xiaophper.com","wxyh_999@126.com"]]; alert(arr[0]); alert(arr[1]); alert(arr[2][0]); alert(arr[2][1]); } getArray();
function getUser() { var user = { "username": "Eric", "age":23, "family": {"mother":"Marry","father":"Alon","brother":"Tom"} }; alert( user.username ); alert( user.age ); alert(user.family.brother); } getUser();
$(".imageBlock").html() //获取class为imageBlock标签里的全部内容,包含imageBlock标签内的HTML标签 $(".forPicture").val() //获取class为forPicture的input里的value值
查阅了一下文档,获取html代码/文本/值的jquery方法有三个,分别是:css
html(); 取得第一个匹配元素的html内容html
text(); 取得全部匹配元素的内容java
val(); 得到匹配元素的当前值。jquery
在使用这三个方法以前,须要先获取一个jquery对象,获取方式以下:json
$(选择器)后端
$(document).ready(function(){ $("#btn1").click(function(){ $("#test1").text("Hello world!"); }); $("#btn2").click(function(){ $("#test2").html("<b>Hello world!</b>"); }); $("#btn3").click(function(){ $("#test3").val("Dolly Duck"); }); });
今天遇到一个问题,就是动态添加的html标签,不会被css所做用,因此只能在动态添加时的html标签里,加上style属性,来达到更改动态添加html样式的目的。测试
PHP中的魔术方法:this
一、__set();该方法的做用是在程序运行过程当中为私有的成员属性设置值,不须要有任何返回值。它须要设置两个参数,第一个参数须要传入在为私有属性设置值时的属性名,第二个参数则是须要传入私有属性的值。不须要主动调用
class person { private $name; private $sex; public function __construct($name="",$sex="") { $this->name = $name; $this->sex = $sex; } public function __set($propertyName,$propertyValue) { if($propertyName == "sex"){ if(!(propertyValue == "男" || propertyValue == "女")) return; } $this->propertyName = $propertyValue; } public function say(){ echo "个人名字:".$this->name.",性别:".$this->sex."。" } } $person = new person("张三","男"); $person->name = "李四"; $person->sex = "女"; $person->say(); 输出结果:个人名字:李四,性别:女。
二、__get();该方法的做用是在程序运行过程当中,能够在对象的外部获取私有成员属性的值,有一个必选参数,须要传入在获取私有属性值时的属性名,斌个返回一个值;
class person { private $name; private $sex; public function __construct($name="",$sex="") { $this->name = $name; $this->sex = $sex; } private __get($propertyName){ if($propertyName == "sex"){ return "保密"; } else { return $this->$propertyName; } } } $person = new person("张三","男"); echo "姓名:".$person->name."<br>"; echo "性别:".$person->sex."<br>"; 输出结果: 姓名:张三 性别:保密
三、isset();isset是判断一个变量是否认义过,即便它没有值,返回值也是true,好比$name="";或var $name,那么if(isset($name))echo 1,它也会输出1,由于$name被定义了,但if($name!="")echo 1;或if(!empty($name))echo 1,它就不会输出1,由于$name虽然被定义了,但它是空的。
四、unset();销毁指定的变量,能够销毁指定对象或者指定对象的可见属性(public)。当 用unset方法销毁对象的不可见属性时, 会引起 __unset()方法;
五、__toString();快速获取对象的字符串表示的最便捷的方式,是在直接输出对象引用时自动调用的方法。
class TestClass { private $foo; //在类中声明一个成员方法 function __construct($foo){ //经过构造方法传值为成员属性赋初始值 $this->foo = $foo; //为成员属性赋值 } public function __toString(){ //在类中定义一个__toString方法 return $this->foo; //返回一个成员属性$foo的值 } } $obj = new TestClass('hello'); //建立一个对象并赋值给对象引用obj echo $obj; //直接输出对象引用并自动调用了对象中__toString()方法输出hello;
此方法必须返回一个字符串,不然将发出一条致命错误。
当咱们调试程序时,须要知道是否得出正确的数据。好比打印一个对象时,看看这个对象都有哪些属性,其值是什么,若是类定义了toString方法,就能在测试时,echo打印对象体,对象就会自动调用它所属类定义的toString方法,输出这个对象所包含的数据。