本文整理匯總了PHP中parse_array函數的典型用法代碼示例。如果您正苦於以下問題:PHP parse_array函數的具體用法?PHP parse_array怎麽用?PHP parse_array使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了parse_array函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: parse_array
function parse_array($arr)
{
foreach ($arr as $key => $value) {
$db = DB::select()->from('categories')->where('id', '=', $key)->execute();
echo '<ul><li>';
echo '<b>Название:</b> ' . form::input('name[]', $db[0]['name'], array('onkeyup' => 'translit(\'name[]\', \'url[]\');')) . form::hidden('cid[]', $db[0]['id']) . ' ';
echo '<b>URL:</b> ' . form::input('url[]', $db[0]['url']) . ' ';
echo '<b>Удалить?</b> ' . form::checkbox('delete[]', $db[0]['id']);
echo '</li>';
if (is_array($value)) {
parse_array($value);
}
echo '</ul>';
}
}
示例2: __construct
function __construct($parse_text_k=null, $parse_text_v=null) {
if(is_array($parse_text_k)) {
$this->data=$parse_text_k;
}
elseif($parse_text_k==null) {
$this->data=array();
}
else {
$ks=parse_array($parse_text_k);
$vs=parse_array($parse_text_v);
$this->data=array();
for($i=0; $i<sizeof($ks);$i++) {
$this->data[$ks[$i]]=$vs[$i];
}
}
}
示例3: download_parse_rss
function download_parse_rss($target)
{
# download tge rss page
$news = http_get($target, "");
# Parse title & copyright notice
$rss_array['TITLE'] = return_between($news['FILE'], "<title>", "</title>", EXCL);
$rss_array['COPYRIGHT'] = return_between($news['FILE'], "<copyright>", "</copyright>", EXCL);
# Parse the items
$item_array = parse_array($news['FILE'], "<item>", "</item>");
for ($xx = 0; $xx < count($item_array); $xx++) {
$rss_array['ITITLE'][$xx] = return_between($item_array[$xx], "<title>", "</title>", EXCL);
$rss_array['ILINK'][$xx] = return_between($item_array[$xx], "<link>", "</link>", EXCL);
$rss_array['IDESCRIPTION'][$xx] = return_between($item_array[$xx], "<description>", "</description>", EXCL);
$rss_array['IPUBDATE'][$xx] = return_between($item_array[$xx], "<pubDate>", "</pubDate>", EXCL);
}
return $rss_array;
}
示例4: get_encoding
function get_encoding($strHTML, $header = false)
{
$enc = "";
if ($header) {
//try to pull encoding from header information
$strHeader = substr($strHTML, 0, strpos($strHTML, "<"));
//looking for line Content-Type: text/html; charset=utf-8
$pos = strpos($strHeader, "charset=");
if ($pos !== FALSE) {
$pos2 = strpos($strHeader, "\n", $pos);
$enc = substr($strHeader, $pos + 8, $pos2 - $pos - 8);
}
}
#$head_section = return_between($string=$strHTML, $start="<head>", $end="</head>", $type=EXCL);
# Create an array of all the meta tags
$meta_tag_array = parse_array($strHTML, $beg_tag = "<meta", $close_tag = ">");
$new_page = "";
# Examine each meta tag for a redirection command
for ($xx = 0; $xx < count($meta_tag_array); $xx++) {
# Look for http-equiv attribute
$meta_attribute = get_attribute($meta_tag_array[$xx], $attribute = "http-equiv");
#echo $meta_tag_array[$xx] . "\n";
if (strtolower($meta_attribute) == "content-type") {
#echo "HERE!";
$new_page = return_between($meta_tag_array[$xx], $start = "charset", $end = ">", $type = EXCL);
# Clean up URL
$new_page = trim(str_replace("", "", $new_page));
$new_page = str_replace("/", "", $new_page);
$new_page = str_replace("=", "", $new_page);
$new_page = str_replace("\"", "", $new_page);
$new_page = str_replace("'", "", $new_page);
$new_page = str_replace(" ", "", $new_page);
break;
}
}
if (strlen($enc) > 0 && strlen($new_page) > 0) {
return $enc . "," . $new_page;
} elseif (strlen($new_page) > 0) {
return $new_page;
} elseif (strlen($enc) > 0) {
return $enc;
} else {
return "";
}
}
示例5: getInfo
public function getInfo()
{
$rawInfo = self::getRaw($this->action, $this->ref, $this->data);
//import('SHD.simple_html_dom');
$infoArray = parse_array($rawInfo['FILE'], '<tr>', '</tr>');
$tr = [];
$this->page = end($infoArray);
foreach ($infoArray as $k => $v) {
$tb = parse_array($v, '<td', '</td>');
$temp = get_attribute($tb[7], 'href');
$temp = split_string($temp, 'proj_idDes=', AFTER, EXCL);
$tb[7] = remove($tb[7], '<a', '>');
$tb[7] = remove($tb[7], '</a', '>');
$temp2 = $tb[7];
$tb[7] = [];
$tb[7][] = $temp2;
$tb[7][] = $temp;
$temp4 = get_attribute($tb[8], 'href');
$temp4 = split_string($temp4, 'proj_idDes=', AFTER, EXCL);
$tb[8] = remove($tb[8], '<a', '>');
$tb[8] = remove($tb[8], '</a', '>');
$temp3 = $tb[8];
$tb[8] = [];
$tb[8][] = $temp3;
$tb[8][] = $temp4;
$tr[] = $tb;
//parse_array($v,'<td','</td>');
//var_dump($tr);
}
/*
[4]=> array(9) { [0]=> string(37) "3" [1]=> string(30) "信息" [2]=> string(49) "201510613089 " [3]=> string(78) "基於人體肢體語言的機械臂操控" [4]=> string(62) "15國家創新訓練項目" [5]=> string(45) "張翠芳" [6]=> string(185) "20132235 劉炳楠
20132312 覃勇傑
20132230 李曉芳
20132169 塗敏
" [7]=> string(145) "查看 " [8]=> string(158) " 成果展" }
*/
/*$html=new simple_html_dom();
$html->load($rawInfo["FILE"]);
//var_dump($html);
//return $rawInfo;
$infoArray = $html->find('tr');*/
return $tr;
}
示例6: harvest_links
function harvest_links($url)
{
# Initialize
global $DELAY;
$link_array = array();
# Get page base for $url
$page_base = get_base_page_address($url);
# Download webpage
sleep($DELAY);
$downloaded_page = http_get($url, "");
$anchor_tags = parse_array($downloaded_page['FILE'], "<a", "</a>", EXCL);
# Put http attributes for each tag into an array
for ($xx = 0; $xx < count($anchor_tags); $xx++) {
$href = get_attribute($anchor_tags[$xx], "href");
$resolved_addres = resolve_address($href, $page_base);
$link_array[] = $resolved_addres;
echo "Harvested: " . $resolved_addres . " \n";
}
return $link_array;
}
示例7: describe_zipcode
function describe_zipcode($zipcode)
{
# Get required libraries and declare the target
include "../util/LIB_http.php";
include "../util/LIB_parse.php";
$target = "http://www.schrenk.com/nostarch/webbots/zip_code_form.php";
# Download the target
$page = http_get($target, $ref = "");
# Parse the session hidden tag from the downloaded page
# <input type="hidden" name="session" value="xxxxxxxxxx">
$session_tag = return_between($string = $page['FILE'], $start = "<input type=\"hidden\" name=\"session\"", $end = ">", $type = EXCL);
# Remove the "'s and "value=" text to reveal the session value
$session_value = str_replace("\"", "", $session_tag);
$session_value = str_replace("value=", "", $session_value);
# Submit the form
$data_array['session'] = $session_value;
$data_array['zipcode'] = $zipcode;
$data_array['Submit'] = "Submit";
$form_result = http_post_form($target, $ref = $target, $data_array);
$landmark = "Information about " . $zipcode;
$table_array = parse_array($form_result['FILE'], "<table", "</table>");
for ($xx = 0; $xx < count($table_array); $xx++) {
# Parse the table containing the parsing landmark
if (stristr($table_array[$xx], $landmark)) {
$ret['CITY'] = return_between($table_array[$xx], "CITY", "</tr>", EXCL);
$ret['CITY'] = strip_tags($ret['CITY']);
$ret['STATE'] = return_between($table_array[$xx], "STATE", "</tr>", EXCL);
$ret['STATE'] = strip_tags($ret['STATE']);
$ret['COUNTY'] = return_between($table_array[$xx], "COUNTY", "</tr>", EXCL);
$ret['COUNTY'] = strip_tags($ret['COUNTY']);
$ret['LATITUDE'] = return_between($table_array[$xx], "LATITUDE", "</tr>", EXCL);
$ret['LATITUDE'] = strip_tags($ret['LATITUDE']);
$ret['LONGITUDE'] = return_between($table_array[$xx], "LONGITUDE", "</tr>", EXCL);
$ret['LONGITUDE'] = strip_tags($ret['LONGITUDE']);
}
}
# Return the parsed data
return $ret;
}
示例8: index
public function index()
{
include "application/libraries/LIB_http.php";
include "application/libraries/LIB_parse.php";
$ref = "http://www.wenku8.cn";
$method = "GET";
$this->load->model("insertmodel");
$success = "Catch OK";
for ($xx = 1; $xx < 1700; $xx++) {
$target = 'http://www.wenku8.cn/wap/article/packshow.php?id=' . $xx . '&type=txtfull';
$web_page = http_get($target, $ref);
//novel_name
$label = '<card';
$meta_tag_array = parse_array($web_page['FILE'], $label, ">");
$meta_tag_array = str_replace(" ", "", $meta_tag_array);
$meta_tag_array = str_replace("-", "", $meta_tag_array);
$meta_tag = split_string($meta_tag_array[0], "title=\"", AFTER, EXCL);
$novel_name = strip_tags(split_string($meta_tag, "TXT", BEFORE, EXCL));
//update_time
preg_match_all("/\\d{4}-\\d{1,2}-\\d{1,2}/", @$web_page['FILE'], $matches_array);
foreach ($matches_array[0] as $key => $value) {
$update_time = $value;
}
echo $update_time;
//size
preg_match_all("/\\d+K/", @$web_page['FILE'], $get_array);
foreach ($get_array[0] as $key => $value) {
$size = $value;
}
$data = array('novel_id' => $xx, 'novel_name' => empty($novel_name) ? '沒有這本小說' : $novel_name, 'update_time' => $update_time, 'size' => $size . K);
//print_r($data);
echo "<br>";
$this->insertmodel->insert_Novel($data);
//echo $data;
}
$this->load->view('curl_result', $success);
}
示例9: curl_setopt
curl_setopt($ch, CURLOPT_REFERER, $file);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_MAXREDIRS, 4);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
$result = array();
$url = filter_input(INPUT_POST, "input-link");
$last_position = strripos($url, '/');
$last_position += 1;
$url_dir = substr($url, 0, $last_position);
$web_page = http_get($url, $ref = "");
$web_page = $web_page["FILE"];
$a_tag = parse_array($web_page, "<a ", ">");
$count = 0;
foreach ($a_tag as $val) {
if (stristr($val, "playAudioBarPlay")) {
$href_str = trim(get_attribute($val, "href"));
$href_str = str_replace("'", "", $href_str);
$href_str = str_replace("(", "", $href_str);
$href_str = str_replace(")", "", $href_str);
$href_arr = explode(",", $href_str);
$href_str = str_replace("javascript:playAudioBarPlay", "", $href_arr[0]);
if (!file_exists("audio/" . $href_str)) {
$audio_file = download_audio($url_dir . 'aumpo/' . $href_str);
file_put_contents("audio/" . $href_str, $audio_file);
$file_size = filesize("audio/" . $href_str, $audio_file);
if ($file_size === false || $file_size <= 0) {
$result["result"] = "error download audio form link";
示例10: http_get
COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF
ANY USE OF THE SOFTWARE OR DOCUMENTATION.
The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the
software without specific, written prior permission. Title to copyright in this software and any associated
documentation will at all times remain with copyright holders.
Copyright 2007, Michael Schrenk
THIS SCRIPT IS FOR DEMONSTRATION PURPOSES ONLY!
It is not suitable for any use other than demonstrating
the concepts presented in Webbots, Spiders and Screen Scrapers.
########################################################################
*/
?>
<?php
#PHP_LIBRARY_PATH
$PHP_LIBRARY_PATH = "../phplibs";
include "{$PHP_LIBRARY_PATH}/LIB_parse.php";
# Include parse library
include "{$PHP_LIBRARY_PATH}/LIB_http.php";
# Include cURL library
$web_page = http_get($target = "http://www.fbi.gov", $referer = "");
$meta_tag_array = parse_array($web_page['FILE'], "<meta", ">");
for ($xx = 0; $xx < count($meta_tag_array); $xx++) {
echo $meta_tag_array[$xx] . "\n";
}
示例11: parse_array
function parse_array($arr)
{
if (is_array($arr)) {
//folder/clip
foreach ($arr as $name => $sub_arr) {
if ($name != $sub_arr['name']) {
//folder
echo "<a onclick='Toggle(this);' style='display: block; cursor: pointer; text-decoration: none;'><img src='resources/images/icon_folder.png' border='none' align='absmiddle' style='margin: 1px 2px 3px 0px;'>" . $name . "</a>";
echo "<div style='display: none; padding-left: 16px;'>\n";
parse_array($sub_arr);
echo "</div>\n";
} else {
//clip
echo "<div style='white-space: nowrap;'>\n";
echo "<a href='javascript:void(0);' onclick=\"parent.document.getElementById('clip_uuid').value='" . $sub_arr['uuid'] . "'; parent.document.getElementById('clip_name').value='" . $sub_arr['name'] . "';\">";
echo "<img src='resources/images/icon_file.png' border='0' align='absmiddle' style='margin: 1px 2px 3px -1px;'>";
echo $sub_arr['name'];
echo "</a>\n";
echo "<textarea style='display: none' id='before_" . $sub_arr['uuid'] . "'>" . $sub_arr['before'] . "</textarea>\n";
echo "<textarea style='display: none' id='after_" . $sub_arr['uuid'] . "'>" . $sub_arr['after'] . "</textarea>\n";
echo "</div>\n";
}
}
}
}
示例12: download_images_for_page
function download_images_for_page($target)
{
echo "target = {$target}\n";
# Download the web page
$web_page = http_get($target, $referer = "");
# Update the target in case there was a redirection
$target = $web_page['STATUS']['url'];
# Strip file name off target for use as page base
$page_base = get_base_page_address($target);
# Identify the directory where iamges are to be saved
$save_image_directory = "saved_images_" . str_replace("http://", "", $page_base);
# Parse the image tags
$img_tag_array = parse_array($web_page['FILE'], "<img", ">");
if (count($img_tag_array) == 0) {
echo "No images found at {$target}\n";
exit;
}
# Echo the image source attribute from each image tag
for ($xx = 0; $xx < count($img_tag_array); $xx++) {
$image_path = get_attribute($img_tag_array[$xx], $attribute = "src");
echo " image: " . $image_path;
$image_url = resolve_address($image_path, $page_base);
if (get_base_domain_address($page_base) == get_base_domain_address($image_url)) {
# Make image storage directory for image, if one doesn't exist
$directory = substr($image_path, 0, strrpos($image_path, "/"));
$directory = str_replace(":", "-", $directory);
$image_path = str_replace(":", "-", $image_path);
clearstatcache();
// clear cache to get accurate directory status
if (!is_dir($save_image_directory . "/" . $directory)) {
mkpath($save_image_directory . "/" . $directory);
}
# Download the image, report image size
$this_image_file = download_binary_file($image_url, $ref = "");
echo " size: " . strlen($this_image_file);
# Save the image
if (stristr($image_url, ".jpg") || stristr($image_url, ".gif") || stristr($image_url, ".png")) {
$fp = fopen($save_image_directory . "/" . $image_path, "w");
fputs($fp, $this_image_file);
fclose($fp);
echo "\n";
}
} else {
echo "\nSkipping off-domain image.\n";
}
}
}
示例13: __construct
function __construct($data) {
parent::__construct($data);
if(is_string($this->data[member_ids])) {
$this->data[member_ids]=parse_array($this->data[member_ids]);
$this->data[member_roles]=parse_array($this->data[member_roles]);
load_objects($this->data[member_ids]);
foreach($this->data[member_ids] as $i=>$mem) {
$obj=load_object($mem);
$this->members[]=array($obj, $this->data[member_roles][$i]);
}
}
}
示例14: array
$indirectTotalIndirectRouteDistanceArray = array();
$indirectTotalRouteDistanceArray = array();
$numRouteCount = 0;
//parse the routes
foreach ($routes as $route) {
$numRouteCount++;
$indirectRouteErrorCodeArray = parse_array($indirectRoute, "<ErrorCode>", "</ErrorCode>");
$indirectStartStopsArray = parse_array($indirectRoute, "<StartStop>", "</StartStop>");
$indirectStartBusesArray = parse_array($indirectRoute, "<StartBuses>", "</StartBuses>");
$indirectFirstJunctionsArray = parse_array($indirectRoute, "<FirstJunction>", "</FirstJunction>");
$indirectDistanceBetweenJunctionArray = parse_array($indirectRoute, "<DistanceBetweenJunction>", "</DistanceBetweenJunction>");
$indirectSecondJunctionsArray = parse_array($indirectRoute, "<SecondJunction>", "</SecondJunction>");
$indirectEndBusesArray = parse_array($indirectRoute, "<EndBuses>", "</EndBuses>");
$indirectEndStopsArray = parse_array($indirectRoute, "<EndStop>", "</EndStop>");
$indirectTotalIndirectRouteDistanceArray = parse_array($indirectRoute, "<TotalIndirectRouteDistance>", "</TotalIndirectRouteDistance>");
$indirectTotalRouteDistanceArray = parse_array($indirectRoute, "<TotalRouteDistance>", "</TotalRouteDistance>");
}
for ($i = 0; $i < $numRouteCount; $i++) {
if ($i == 0) {
echo "StartStop:" . $startStop . "," . "EndStop:" . $endStop . ",depotErrorCode:" . intval($depotErrorCode) . "n";
}
echo "<br/>";
//echo "Route#".$i;
echo "ErrorCode:" . intval(return_between($indirectRouteErrorCodeArray[$i], "<ErrorCode>", "</ErrorCode>", EXCL)) . "\t";
//echo "StartStop:".$indirectStartStopsArray[$i]."\t";
//echo "StartBuses:".$indirectStartBusesArray[$i]."\t";
//echo "FirstJunction:".$indirectFirstJunctionsArray[$i]."\t";
echo "DistanceBetweenJucntion:" . $indirectDistanceBetweenJunctionArray[$i] . "\t";
//echo "SecondJunction:".$indirectSecondJunctionsArray[$i]."\t";
//echo "EndBuses:".$indirectEndBusesArray[$i]."\t";
//echo "EndStop:".$indirectEndStopsArray[$i]."\t";
示例15: http_get
<?php
# Inlcude http and parse libraries
include "../util/LIB_http_browser.php";
include "../util/LIB_parse.php";
include "../util/LIB_resolve_addresses.php";
include "../util/LIB_http_codes.php";
# Identify the target web page and the page base
$target = "http://www.schrenk.com/nostarch/webbots/page_with_broken_links.php";
$page_base = "http://www.schrenk.com/nostarch/webbots/";
# Download the web page
$downloaded_page = http_get($target, $ref = "");
# Parse the links
$link_array = parse_array($downloaded_page['FILE'], $beg_tag = "<a", $close_tag = ">");
# Verify the links
?>
<table border="1" cellpadding="1" cellspacing="0">
<tr bgcolor="#e0e0e0">
<th>URL</th>
<th>HTTP CODE</th>
<th>DOWNLOAD TIME (seconds)</th>
</tr>
<?php
for ($xx = 0; $xx < count($link_array); $xx++) {
// Parse the http attribute from link
$link = get_attribute($tag = $link_array[$xx], $attribute = "href");
// Create a fully resolved address
$resloved_link_address = resolve_address($link, $page_base);
$downloaded_link = http_get($resloved_link_address, $target);