Example #1
1
<?php

require_once '../PhpQuery/PhpQuery.php';
PhpQuery::$debug = 2;
$testName = 'HTML insertion';
$doc = PhpQuery::newDocumentFile('document-types/document-utf8.xhtml');
//$doc = PhpQuery::newDocumentFile('document-types/document-utf8.html');
//$doc = PhpQuery::newDocumentFile('document-types/document-utf8.xml');
//print $doc->find('step');
print $doc->find('p');
$markup = "test<br />test<p>test p</p>";
$doc['body > p:last']->append($markup);
if ($doc['body > p:last p']->length == 1) {
    print "Test '{$testName}' PASSED :)";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!! ";
    print $doc->htmlOuter('htmlspecialchars');
}
print "\n";
Example #2
0
<?php

require_once '../PhpQuery/PhpQuery.php';
PhpQuery::$debug = true;
$testName = 'ReplaceWith';
PhpQuery::newDocumentFile('test.html')->find('p:eq(1)')->replaceWith("<p class='newTitle'>\n                        this is example title\n                    </p>");
$result = pq('p:eq(1)');
if ($result->hasClass('newTitle')) {
    print "Test '{$testName}' PASSED :)";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!! ";
}
$result->dump();
print "\n";
$testName = 'ReplaceAll';
$testResult = 3;
PhpQuery::newDocumentFile('test.html');
pq('<div class="replacer">')->replaceAll('li:first p');
$result = pq('.replacer');
if ($result->size() == $testResult) {
    print "Test '{$testName}' PASSED :)";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!! ";
}
$result->dump();
print "\n";
Example #3
0
print "\n";
// CLONE
$testName = 'Clone';
$testResult = 3;
$document;
$p = PhpQuery::newDocumentFile('test.html')->toReference($document)->find('p:first');
foreach (array(0, 1, 2) as $i) {
    $p->clone()->addClass("clone-test")->addClass("class-{$i}")->insertBefore($p);
}
if (pq('.clone-test')->size() == $testResult) {
    print "Test '{$testName}' PASSED :)";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!! ";
}
print "\n";
// SIBLINGS
$testName = 'Next';
$testResult = 3;
$document;
$result = PhpQuery::newDocumentFile('test.html')->find('li:first')->next()->next()->prev()->is('#testID');
if ($result) {
    print "Test '{$testName}' PASSED :)";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!! ";
}
print "\n";
?>


<?php 
die;
Example #4
0
//));
//function v87shs79d8fhs9d($html) {
//	$title = PhpQuery::newDocument($html)->find('title');
//	$testName = 'Simple AJAX';
//	if ( strpos(strtolower($title->html()), 'wikipedia') !== false )
//		print "Test '$testName' PASSED :)";
//	else {
//		print "Test '$testName' <strong>FAILED</strong> !!! ";
//		print "<pre>";
//		print_r($title->whois());
//		print "</pre>\n";
//	}
//	print "\n";
//}
$testName = 'Load';
$test = PhpQuery::newDocumentFile('test.html')->find('div:first')->load('http://wikipedia.org/ div[lang]');
if (pq('div[lang]')->size()) {
    print "Test '{$testName}' PASSED :)";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!! ";
    print "<pre>";
    print "</pre>\n";
}
print "\n";
// http://code.google.com/p/phpquery/issues/detail?id=130
$pq = PhpQuery::ajax(array('url' => 'http://' . $_SERVER['SERVER_NAME'] . preg_replace('@/[^/]+$@', '/test_ajax_data_1', $_SERVER['REQUEST_URI']), 'success' => 'a789fhasdui3124', 'error' => 'jhdbg786213u8dsfg7y'));
function a789fhasdui3124($html)
{
    $testName = 'AJAX request text node';
    if ($html == 'hello world') {
        print "Test '{$testName}' PASSED :)";
Example #5
0
}
print_r($result->whois());
print "\n";
$testName = 'Filter with multiplie selectors';
$testResult = array('p.body');
$testDOM = PhpQuery::newDocumentFile('test.html');
$single = $testDOM->find('p')->filter('.body')->add($testDOM->find('p')->filter('.title'));
$double = $testDOM->find('p')->filter('.body, .title');
if ($single->length == count($double)) {
    print "Test '{$testName}' PASSED :)";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!! ";
}
print "\n";
print_r($single->whois());
print "\n";
print_r($double->whois());
print "\n";
$testName = 'Attributes in HTML element';
$validResult = 'testValue';
$result = PhpQuery::newDocumentFile('test.html')->find('html')->empty()->attr('test', $validResult);
$result = PhpQuery::newDocument($result->htmlOuter())->find('html')->attr('test');
//similar_text($result->htmlOuter(), $validResult, $similarity);
if ($result == $validResult) {
    print "Test '{$testName}' PASSED :)";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!! ";
    print "<pre>";
    print $result;
    print "</pre>\n";
}
Example #6
0
$testName = 'Append and move';
$result = PhpQuery::newDocumentFile('test.html');
$li = $result->find('li:first');
$result->find('div')->_empty();
$li->html('test1-&eacute;-test1')->append('test2-é-test2')->appendTo($result->find('div:first'));
$result = $result->find('div:first li:first');
$expected = 'test1-é-test1test2-é-test2';
if (trim(str_replace("\n", '', $result->html())) == $expected) {
    print "Test '{$testName}' passed :)<br />\n";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!!<br />\n";
    print "'" . trim($result->html()) . "'";
}
print "\n";
$testName = 'Attr charset';
$result = PhpQuery::newDocumentFile('test.html')->find('li:first')->attr('test', 'foo &eacute; żźć bar');
if (trim($result->attr('test')) == 'foo &eacute; żźć bar') {
    print "Test '{$testName}' passed :)<br />\n";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!!<br />\n";
    print $result->attr('test');
}
print "\n";
//$testName = 'Loading document without meta charset';
//$result = PhpQuery::newDocumentFile('test.html')
//	->_empty();
////var_dump((string)$result->htmlOuter());
//$result = PhpQuery::newDocument($result->htmlOuter());
//$validResult = <<<EOF
//<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
//<html xmlns="http://www.w3.org/1999/xhtml" xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /></head></html>
Example #7
0
$p->dump();
print "\n";
$testName = 'WrapAll';
$testResult = 1;
PhpQuery::newDocumentFile('test.html')->find('p')->slice(1, 3)->wrapAll('<div class="wrapper">');
$result = pq('.wrapper');
if ($result->size() == $testResult) {
    print "Test '{$testName}' PASSED :)";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!! ";
}
$result->dump();
print "\n";
$testName = 'WrapInner';
$testResult = 3;
PhpQuery::newDocumentFile('test.html')->find('li:first')->wrapInner('<div class="wrapper">');
$result = pq('.wrapper p');
if ($result->size() == $testResult) {
    print "Test '{$testName}' PASSED :)";
} else {
    print "Test '{$testName}' <strong>FAILED</strong> !!! ";
}
print $result->dump();
print "\n";
// TODO !
$testName = 'WrapAllTest';
/*
$doc = PhpQuery::newDocumentHTML('<div id="myDiv"></div>');
$doc['#myDiv']->append('hors paragraphe<p>Test</p>hors paragraphe')
	->contents()
		->not('[nodeType=1]')
Example #8
0
// CALLBACKS
class callbackClass
{
    static function staticMethodCallback($node)
    {
        pq($node)->addClass('newClass');
    }
    function methodCallback($node)
    {
        pq($node)->addClass('newClass');
    }
}
function functionCallback($node)
{
    pq($node)->addClass('newClass');
}
$testResult = array('li.newClass', 'li#testID.newClass', 'li.newClass', 'li#i_have_nested_list.newClass', 'li.nested.newClass', 'li.second.newClass');
$tests = array('functionCallback', array('callbackClass', 'staticMethodCallback'), array(new callbackClass(), 'methodCallback'));
foreach ($tests as $test) {
    $result = PhpQuery::newDocumentFile('test.html')->find('li')->each($test);
    $testName = is_array($test) ? $test[1] : $test;
    if ($result->whois() == $testResult) {
        print "Test '{$testName}' PASSED :)";
    } else {
        print "Test '{$testName}' <strong>FAILED</strong> !!! ";
        print "<pre>";
        print_r($result->whois());
        print "</pre>\n";
    }
    print "\n";
}