您的位置:首页 > 编程语言 > PHP开发

php 库函数和经典算法持续收集中

2013-12-09 17:15 295 查看
1、数组查找

<?php

/**

*获取指定范围下标的数组

*@params $arr 原数组

*@params $start 开始下标

*@params $end 结束下标

*@return 返回指定下标范围的数组

*/

function getByKeyRang($arr, $start, $end){

$return_keys = range($start, $end); //生成数组

print_r($return_keys);

$return_keys = array_flip($return_keys); //反转数组

echo '<br>';

print_r($return_keys);

echo '<br>';

return array_intersect_key($arr, $return_keys); //数组比较获取前一数组的数值

}

//测试

$arr = array(1=>'sadas',20=>'aasd',5002=>'fghfg', 580=>'dfgdg', 190023=>'rty',248=>'kj',76=>'sddd',606=>'sddd', 505=>'dfgfdg');

var_dump(getByKeyRang($arr, 501, 599));

//输出

array (size=2)
580 => string 'dfgdg' (length=5)
505 => string 'dfgfdg' (length=6)


?>

2、页面更新,select控件设置初始选中状态;

<fieldset>

  <?php echo "应用类型:"?>

<fieldset>

<select style="width: 30%; float: left; margin-right: 3%;"

name="parentType" id="parentType" onchange="childtype(this.value)">

<option value="" Selected><?php echo lang('v_man_pr_pleaseSelect') ?></option>

<?php if(isset($parenttype)):?>

<?php foreach($parenttype as $rel) {?>

<option value="<?php echo $rel['id']; ?>"><?php echo $rel['parent_name'];?></option>

<?php } endif;?>

</select>

<select style="width: 27%; float: left; margin-right: 3%;"

name="childType" id="childType" onchange="grandchildtype(this.value)">

<option value="" Selected><?php echo lang('v_man_pr_pleaseSelect') ?></option>

</select>

<select style="visibility:hidden" style="width: 27%; float: left; margin-right: 3%;"

name="grandchildType" id="grandchildType" >

<option value="" Selected><?php echo lang('v_man_pr_pleaseSelect') ?></option>

</select>

</fieldset>

</fieldset>

<script type="text/javascript">

////select控件设置初始选中状态

$(document).ready(function(){

document.getElementById("parentType").options[0].selected = "selected";

});

//////select控件联动

function clearSel(selectname){

while(selectname.childNodes.length>0){

selectname.removeChild(selectname.childNodes[0]);

}

}

function childtype(parenttype)

{

document.getElementById('grandchildType').style="visibility:hidden;width: 27%; float: left; margin-right: 3%;";

if(parenttype=="")

{

var chann=document.getElementById("childType").value;

var selectTag = document.getElementById("childType");

var colls = selectTag.options;

if((chann!="") || (colls.length>0))

{

clearSel(document.getElementById("childType"));

var value = "";
 

var text ="<?php echo lang('v_man_pr_pleaseSelect') ?>";

var channel = new Option(text,value);

document.getElementById('childType').options.add(channel);

return;

}

document.getElementById('msg').innerHTML = '<?php echo lang('v_man_pr_selectPlatform') ?>';

document.getElementById('msg').style.display="block";

return;

}

var data = {

parent:parenttype

};

jQuery

.ajax({

type : "post",

url : "<?php echo site_url()?>/plugin/huawei/huaweiactivate/uploadchildtype",

data : data,

success : function(msg) {

//alert(msg);

//document.getElementById('msg').innerHTML = "<?php echo lang('v_man_pr_selectChannel') ?>";

//document.getElementById('msg').style.display="block";

jsonData=eval("("+msg+")");

var selectTag = document.getElementById("childType");

var colls = selectTag.options;

if((colls.length>0) || (document.getElementById("childType").value!=""))

{

clearSel(document.getElementById("childType"));

}

//alert(jsonData);

{

var tempvalue = 0;
 

var temptext = "<?php echo lang('huawei_select_apptype') ?>";

var tempchannel = new Option(temptext,tempvalue);

document.getElementById('childType').options.add(tempchannel);  

}

for(i = 0;i<jsonData.length;i++)

{

var value = jsonData[i]['child_id'];
 

var text = jsonData[i]['child_name'];

var channel = new Option(text,value);

document.getElementById('childType').options.add(channel);  

}

},

error : function(XmlHttpRequest, textStatus, errorThrown) {

alert("<?php echo lang('t_error') ?>");

},

beforeSend : function() {

//document.getElementById('msg').innerHTML = '<?php echo lang('v_rpt_ve_waitLoad') ?>';

//document.getElementById('msg').style.display="block";

},

complete : function() {

}

});

}

function grandchildtype(childtype)

{

parent = document.getElementById('parentType').value;

//document.getElementById('type').style="visibility:visible;width: 27%; float: left; margin-right: 3%;";

if(childtype=="")

{

var chann=document.getElementById("grandchildType").value;

var selectTag = document.getElementById("grandchildType");

var colls = selectTag.options;

if((chann!="") || (colls.length>0))

{

clearSel(document.getElementById("grandchildType"));

var value = "";
 

var text ="<?php echo lang('huawei_select_apptype') ?>";

var channel = new Option(text,value);

document.getElementById('grandchildType').options.add(channel);

return;

}

document.getElementById('msg').innerHTML = '<?php echo lang('huawei_select_apptype') ?>';

document.getElementById('msg').style.display="block";

return;

}

var data = {

parent:parent,

child:childtype

};

jQuery

.ajax({

type : "post",

url : "<?php echo site_url()?>/plugin/huawei/huaweiactivate/uploadgrandchildtype",

data : data,

success : function(msg) {

//alert(msg);

//document.getElementById('msg').innerHTML = "<?php echo lang('huawei_select_apptype') ?>";

//document.getElementById('msg').style.display="block";

jsonData=eval("("+msg+")");

var selectTag = document.getElementById("grandchildType");

var colls = selectTag.options;

if((colls.length>0) || (document.getElementById("grandchildType").value!=""))

{

clearSel(document.getElementById("grandchildType"));

}

if(jsonData && jsonData.length>0)

{

document.getElementById('grandchildType').style="visibility:visible;width: 27%; float: left; margin-right: 3%;";

//alert(jsonData);

{

var tempvalue = 0;
 

var temptext = "<?php echo lang('huawei_select_apptype') ?>";

var tempchannel = new Option(temptext,tempvalue);

document.getElementById('grandchildType').options.add(tempchannel);  

}

for(i = 0;i<jsonData.length;i++)

{

var value = jsonData[i]['grandchild_id'];
 

var text = jsonData[i]['grandchild_name'];

var channel = new Option(text,value);

document.getElementById('grandchildType').options.add(channel);  

}

}

},

error : function(XmlHttpRequest, textStatus, errorThrown) {

alert("<?php echo lang('t_error') ?>");

},

beforeSend : function() {

//document.getElementById('msg').innerHTML = '<?php echo lang('v_rpt_ve_waitLoad') ?>';

//document.getElementById('msg').style.display="block";

},

complete : function() {

}

});

}

</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: