Yealink remote_book
Добавлено: 16 авг 2018, 16:30
Всем привет
Вот написал скрипт для создания телефонной книги для телефона Yealink
Свой вариант. так сказать.
На входе пока только csv.
Вот с этим повозился немного
На входе массив $nicoom_name[] с городами и они могут повторяться.
А нужен был массив с городами без повторений.
И вот он $unicoom_name[$c]
Да, книгу ещё не загружал на сервер вообщем не проверял.
Просто хотел скрипт показать...
Вот написал скрипт для создания телефонной книги для телефона Yealink
Свой вариант. так сказать.
На входе пока только csv.
- Код: Выделить всё
<?php
//require_once __DIR__ .'/simplexlsx.class.php';
//include(simplexslx.class.php);
$frem = fopen('manybook.xml','w+');
$fknt = fopen('kontakts_org8.csv','r');
//$f_xl = fopen('kontakts_org.xlsx','r');
$cnt_arr=0;
$nicoom_name[0]="";
$unicoom_name[0]="";
$str_name[0]="";
if(!$frem){echo "Error open file";}
while(!feof($fknt)){
$s = fgets($fknt,1024);
if(strlen($s)==0){continue;}
$s = trim($s,"\n\r");
$arr = explode(";",$s);
$nicoom_name[$cnt_arr]=$arr[4];
$str_name[$cnt_arr]=$s;
$cnt_arr=$cnt_arr + 1;
}
/////////////////////////////////////////
$c = 0;
for($k = 0; $k<$cnt_arr; $k++){
$temp_name = $nicoom_name[$k];
$ind =0;
//foreach($nicoom_name as $a){
for($ml = $k; $ml<$cnt_arr; $ml++){
//echo $a."\n";
if($temp_name == $nicoom_name[$ml] ){
//$ind = $ind + 1;
$iind =0;
foreach($unicoom_name as $u){if($u == $temp_name){$iind = $iind +1;} }
if($iind == 0){$unicoom_name[$c] = $temp_name; $c = $c + 1;}
break; }
}
}
////////////////////////////////////////
//////////////////
foreach($unicoom_name as $tu){echo $tu."\n"; }
//////////////////
$head = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<YealinkIPPhoneBook>
<Title>Yealink</Title>"."\n";
$wh = fwrite($frem,$head);
foreach($unicoom_name as $tu){//echo $tu."\n";
$head = "<Menu Name=\"$tu\">\n";
$wh = fwrite($frem,$head);
$str_c = 0;
for($k = 0; $k<$cnt_arr; $k++){
if(strlen($str_name[$k])==0){continue;}
$arr = explode(";",$str_name[$k]);
if($arr[4] != $tu){continue;}
$bos = "<Unit Name=\"$arr[0]\" Phone1=\"$arr[1]\" Phone2=\"$arr[2]\" Phone3=\"$arr[3]\" default_photo=\"Resource:\"/>";
$bos="\t".$bos."\n";
$tw = fwrite($frem,$bos);
echo $s;
}
$fu = "</Menu>"."\n";
$tw = fwrite($frem,$fu);
}
$fu = "</YealinkIPPhoneBook>"."\n";
$tw = fwrite($frem,$fu);
fclose($fknt);
fclose($frem);
?>
Вот с этим повозился немного
На входе массив $nicoom_name[] с городами и они могут повторяться.
А нужен был массив с городами без повторений.
- Код: Выделить всё
$c = 0;
for($k = 0; $k<$cnt_arr; $k++){
$temp_name = $nicoom_name[$k];
$ind =0;
//foreach($nicoom_name as $a){
for($ml = $k; $ml<$cnt_arr; $ml++){
//echo $a."\n";
if($temp_name == $nicoom_name[$ml] ){
//$ind = $ind + 1;
$iind =0;
foreach($unicoom_name as $u){if($u == $temp_name){$iind = $iind +1;} }
if($iind == 0){$unicoom_name[$c] = $temp_name; $c = $c + 1;}
break; }
}
}
И вот он $unicoom_name[$c]
Да, книгу ещё не загружал на сервер вообщем не проверял.
Просто хотел скрипт показать...