1.php如何过滤汉字里的特殊字符
PHP 中的 htmlspecialchars()、preg_replace() 函数可以实现 htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体。
预定义的字符是: & (和号) 成为 & " (双引号) 成为 " ' (单引号) 成为 ' < (小于) 成为 < > (大于) 成为 > htmlspecialchars(string,quotestyle,character-set) 参数说明 string 必需。规定要转换的字符串。
quotestyle 可选。规定如何编码单引号和双引号。
ENT_COMPAT - 默认。仅编码双引号。
ENT_QUOTES - 编码双引号和单引号。 ENT_NOQUOTES - 不编码任何引号。
preg_replace() 执行一个正则表达式的搜索和替换 mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] ) 搜索subject中匹配pattern的部分, 以replacement进行替换. pattern 要搜索的模式. 可以使一个字符串或字符串数组. 可以使用一些PCRE修饰符, 包括'e'(PREG_REPLACE_EVAL), 可以为这个函数指定. replacement 用于替换的字符串或字符串数组. 例如: <?php $str = "字符字符字符字符字符字符';\t\r"; $str = preg_replace("/\'/",'',$str); echo htmlspecialchars($str); ?>。
2.php如何调用jsp接口
一看你这个wsdl 就是webservice服务接口,你看他的调用说明,只要相关功能符合他的接口规范,他会返回你需要的数据,又不需要管他是用什么语言开发实现,你只管你自己这的提交参数符合他的功能要求就行
getAAA(String params):String
$params='aabcd';字符串参数
$myname=getAAA($params)//返回字符串数据
logonXt(String username,String password,):String
$loginOK=logonXt('admin','123456'); //返回字符串的登录结果成功或失败
3.怎么取得mongodb id php
在MongoDB中,文档是对数据的抽象,它被使用在Client端和Server端的交互中。所有的Client端(各种语言的Driver)都会使用这种抽象,它的表现形式就是我们常说的BSON(Binary JSON )。
BSON是一个轻量级的二进制数据格式。
MongoDB能够使用BSON,并将BSON作为数据的存储存放在磁盘中。
当Client端要将写入文档,使用查询等等操作时,需要将文档编码为BSON格式,然后再发送给Server端。同样,Server端的返回结果也是编码为BSON格式再放回给Client端的。
4.php面向对象的概念理解.
在我们初步学习的面向过程程序设计方法,比如C语言中:
程序=算法+数据结构;
但是面向对象程序设计方法,如C++,和后来的PHP等语言:
程序=(算法+数据结构);
就是说算法与数据结构组成一个整体,而这个整体就是类,把类详细化了就是一个一个具体的对象。
比如定义一个类,再用类声明一个对象:
class Student()
{。.functions()
protected:
int a;
char b;
}
Student xiaobai;
Student就是一个类,xiaobai就是一个对象。
像楼主说的那样,对象除了封装方法(我们也可以称之为算法)之外,还可以有一些数据成员,比如上面的a,b,所以类封装不只封装了算法,还有这些算法之下的数据!
从某方面来说,面向对象是函数的升级,因为这类也是可以在主函数外定义的,这也可以将其看作是一种特殊的函数(个人看法啊),我们可以调用这“函数”中的数据和方法。所以楼主说的在广义上也是成立的!
另外,建议楼主先阅读下C++有关课程的关于面向对象的论述,可能会对你有所帮助!
5.那位师傅给我讲下java里的抽象类的定义方法
抽象类与接口紧密相关,它们不能示例化,并且常常部分实现或根本不实现。
抽象类和接口之间的一个主要差别是:类可以实现无限个接口,但仅能从一个抽象(或任何其他类型)类继承。从抽象类派生的类仍可实现接口。
可以在创建组件时使用抽象类,因为它们使您得以在某些方法中指定不变级功能,但直到需要该类的特定实现之后才实现其他方法。抽象类也制定版本,因为如果在派生类中需要附加功能,则可以将其添加到基类而不中断代码。
在 Visual Basic 中,抽象类用 MustInherit 关键字表示。在 C# 中,则使用 abstract 修饰符。
任何所谓不变的方法都可以编码至基类中,但在 Visual Basic 中,任何要实现的方法都用 MustOverride 修饰符标记。在 C# 中,这些方法标记为 abstract。
================================== 抽象方法和抽象类 面向对象程序通过类的分层结构构建起来. 在单重继承语言如php中, 类的继承是树状的. 一个根类有一个或更多的子类,再从每个子类继承出一个或更多下一级子类. 当然,可能存在多个根类,用来实现不同的功能. 在一个良好设计的体系中,每个根类都应该有一个有用的接口, 可以被应用代码所使用. 如果我们的应用代码被设计成与根类一起工作,那么它也可以和任何一个从根类继承出来的子类合作. 抽象方法是就像子类中一般的方法的占位符(占个地方但不起作用),它与一般方法不同—没有任何代码. 如果类中存在一个或更多抽象方法, 那么这个类就成了抽象类. 你不能实例化抽象类. 你必须继承它们,然后实例化子类. 你也可以把抽象类看成是子类的一个模板. 如果你覆写所有的抽象方法, 子类就变成一个普通的类. 如果没有覆写所有方法, 子类仍是抽象的. 如果一个类中中包含有抽象方法(哪怕只有一个), 你必须声明这个类是抽象的, 在class关键字前加上abstract. 声明抽象方法的语法与声明一般方法不同. 抽象方法的没有像一般方法那样包含在大括号{}中的主体部份,并用分号;来结束. 在例子6.13中, 我们定义了一个含有getarea方法的类shape. 但由于不知道形状不可能确定图形的面积,确良我们声明了getarea方法为抽象方法. 你不能实例化一个shape对象,但你可以继承它或在一个表达式中使用它, 就像例6.13中那样. 如果你建立了一个只有抽象方法的类,你就定义了一个接口(interface). 为了说明这种情况, php中有interface 和implements关键字. 你可以用interface来代替抽象类, 用implements来代替extends来说明你的类定义或使用一个接口. 例如, 你可以写一个myclass implements myiterface. 这两种方法可以依个人偏爱来选择. /*注: 两种方法即指: 1. abstract class aaa{} (注意aaa中只有抽象方法,没有一般方法) class bbb extends aaa{} (在bbb中覆写aaa中的抽象方法) 2. interface aaa{} class bbb implements aaa{} (在bbb中覆写aaa中的抽象方法) */ listing 6.13 abstract classes <?php //abstract root class 抽象根类 abstract class shape { abstract function getarea(); //定义一个抽象方法 } //abstract child class 抽象子类 abstract class polygon extends shape //多边形 { abstract function getnumberofsides(); } //concrete class 实体类 三角形类 class triangle extends polygon { public $base; public $height; public function getarea() //覆写计算面积方法 { return(($this->base * $this->height)/2); } public function getnumberofsides() //覆写边数统计方法 { return(3); } } //concrete class 实体类四边形 class rectangle extends polygon { public $width; public $height; public function getarea() { return($this->width * $this->height); } public function getnumberofsides() { return(4); } } //concrete class 实体类 圆形 class circle extends shape { public $radius; public function getarea() { return(pi() * $this->radius * $this->radius); } } //concrete root class 定义一个颜色类 class color { public $name; } $mycollection = array(); //建立形状的集合,放入数组 //make a rectangle $r = new rectangle; $r->width = 5; $r->height = 7; $mycollection[] = $r; unset($r); //make a triangle $t = new triangle; $t->base = 4; $t->height = 5; $mycollection[] = $t; unset($t); //make a circle $c = new circle; $c->radius = 3; $mycollection[] = $c; unset($c); //make a color $c = new color; $c->name = "blue"; $mycollection[] = $c; unset($c); foreach($mycollection as $s) { if($s instanceof shape) //如果$s是shape类的实例 { print("area: " . $s->getarea() . "n"); } if($s instanceof polygon) { print("sides: " . $s->getnumberofsides() . "n"); } if($s instanceof color) { print("color: $s->namen"); } print("n"); }。
6.php提交html标签
你最终的目的其实是不想让这个文本框中的内容被编辑,而且好做样式是吧?
如果是这样,你可以使用JS来实现,但是提交的根本还是利用form表单
其中只是将提交用的表单给隐藏了,在提交之前,将div中的内容放到hidden表单的value中去。
特别注意,因为text以及hidden表单不支持多行文本,所以在id为myData的div中,不可以出现换行字符!
也就是说,
二级列表#myData{ width:200px; margin: 0 auto; background-color: #EEE; height:300px;}function t(){ document.getElementById("t5").value = document.getElementById("myData").innerText;}
7.PHP代码 转成 正确的 java代码
java:1、用hashmap存储元素,键值对方式。
Map
4、然后写一个方法遍历hashmap,拼接成字符串格式为apikey=456&appid=123&secretkey=789*tamp=1389379498 然后对该字符串进行encoded编码,输出格式为apikey=456&appid=123&secretkey=789*tamp=13893794985、通过java中HMAC-SHA1算法加密该字符串,$secretKey为安全密钥。6、再通过base64_encode加密第5步产生的字符串。
这是最终sig结果。java易混淆概念之类变量、实例变量、局部变量 类变量、实例变量、局部变量类变量是类中独立于方法之外的变量,用static 修饰。
实例变量也是类中独立于方法之外的变量,不过没有static修饰。局部变量是类的方法中的变量。
看下面的伪代码说明:public class Variable{ static int allClicks=0; //类变量 String str="hello world"; //实例变量 public void method(){ int i =0; //局部变量 } } 实例变量也称为:“域”,“成员变量”,在实体类或数据类中被称为“属性”或“字段”。当实例变量可以改变时,被称为对象的状态。
2. final用于常量的声明,规范要求常量的变量名是大写的。3. statci 在java 里面用于对类方法和属性进行修饰,其作用是什么呢?有两种情况是non-static无法做到的,这时你就要使用statice。
第一种:你希望不论产生了多少个对象,或不存在任何对象的情形下,那些特定数据的存储空间都只有一份;第二种:你希望某个函数不要和class object绑在一起。即使没有产生任何object,外界还是可以调用其static函数,或是取用其static php代码没几行,信息量很大,翻译成java代码行数量比较大。
仅提供思路和php代码解释。---------------<?php $appid = "123"; //数组里面的值,id。
$apikey = "456"; //数组里面的值,为加密密钥。$secretKey ="789"; //数组里面的值,安全密钥。
$timestamp = time(); ////数组里面的值,获得当前时间。//UNIX 时间戳(timestamp)是 PHP 中关于时间日期一个很重要的概念,它表示从 1970年1月1日 00:00:00 到当前时间的秒数之和。
//echo输出$timestamp变量值,例如输出了1389379960 echo $timestamp; //定义数组。以键值对方式存储。
//'appid' 'apikey' 'secretkey' 'timestamp'是key,键。//$appid $apikey, $secretKey $timestamp是value,值。
$params = array('appid'=>$appid, 'apikey'=>$apikey, 'secretkey'=>$secretKey, 'timestamp'=>$timestamp);//对数组键值进行升序排序。排序结果为apikey appid secretkey timestamp ksort($params);//拼接数组中的参数,并且用encoded编码。
//http_build_query -- 生成 url-encoded 之后的请求字符串。当数组没有写下标时,就会用第二个参数结合当前默认下标当前缀。
//$param_uri变量值,结果为apikey=456&appid=123&secretkey=789*tamp=1389379498$param_uri = http_build_query($params,'','&'); echo $param_uri; //echo输出结果为apikey=456&appid=123&secretkey=789*tamp=1389379498//先使用调用hash_hmac方法加密,HMAC-SHA1算法。//$secretKey为安全密钥,$param_uri为要加密的明文。
'sha1'是HMAC-SHA1算法。//再调用base64_encode方法加密,base64_encode 使用 MIME base64 对数据进行编码。
$sig = base64_encode(hash_hmac('sha1', $param_uri, $secretKey));?> java:1、用hashmap存储元素,键值对方式。Map
3、然后对hashmap进行升序排序。4、然后写一个方法遍历hashmap,拼接成字符串格式为apikey=456&appid=123&secretkey=789×tamp=1389379498 然后对该字符串进行encoded编码,输出格式为apikey=456&appid=123&secretkey=789*tamp=13893794985、通过java中HMAC-SHA1算法加密该字符串,$secretKey为安全密钥。
6、再通过base64_encode加密第5步产生的字符串。这是最终sig结果。