1. Go to this page and download the library: Download eloquent/pops library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
eloquent / pops example snippets
class Confusion
{
public function wat()
{
return "What is this? I don't even...";
}
public $derp = 'Has anyone really been far even as decided to use even?';
}
use Eloquent\Pops\ProxyObject;
class UppercaseProxyObject extends ProxyObject
{
public function popsCall($method, array &$arguments)
{
return strtoupper(parent::popsCall($method, $arguments));
}
public function __get($property)
{
return strtoupper(parent::__get($property));
}
}
$confusion = new Confusion;
$proxy = new UppercaseProxyObject($confusion);
echo $confusion->wat(); // outputs "What is this? I don't even..."
echo $proxy->wat(); // outputs "WHAT IS THIS? I DON'T EVEN..."
echo $confusion->derp; // outputs 'Has anyone really been far even as decided to use even?'
echo $proxy->derp; // outputs 'HAS ANYONE REALLY BEEN FAR EVEN AS DECIDED TO USE EVEN?'
namespace OutputEscaper;
use Eloquent\Pops\Proxy;
/**
* Escapes output for use in HTML.
*/
class OutputEscaperProxy extends Proxy
{
/**
* Get the array proxy class.
*
* @return string The array proxy class.
*/
protected static function proxyArrayClass()
{
return __NAMESPACE__ . '\OutputEscaperProxyArray';
}
/**
* Get the class proxy class.
*
* @return string The class proxy class.
*/
protected static function proxyClassClass()
{
return __NAMESPACE__ . '\OutputEscaperProxyClass';
}
/**
* Get the object proxy class.
*
* @return string The object proxy class.
*/
protected static function proxyObjectClass()
{
return __NAMESPACE__ . '\OutputEscaperProxyObject';
}
/**
* Get the proxy class for primitive values.
*
* @return string The proxy class for primitive values.
*/
protected static function proxyPrimitiveClass()
{
return __NAMESPACE__ . '\OutputEscaperProxyPrimitive';
}
}
namespace OutputEscaper;
use Eloquent\Pops\ProxyArray;
/**
* Wraps an array to escape any sub-values for use in HTML.
*/
class OutputEscaperProxyArray extends ProxyArray
{
/**
* Get the proxy class.
*
* @return string The proxy class.
*/
protected static function popsProxyClass()
{
return __NAMESPACE__ . '\OutputEscaperProxy';
}
}
namespace OutputEscaper;
use Eloquent\Pops\ProxyClass;
/**
* Wraps a class to escape any sub-values for use in HTML.
*/
class OutputEscaperProxyClass extends ProxyClass
{
/**
* Get the proxy class.
*
* @return string The proxy class.
*/
protected static function popsProxyClass()
{
return __NAMESPACE__ . '\OutputEscaperProxy';
}
}
namespace OutputEscaper;
use Eloquent\Pops\ProxyObject;
/**
* Wraps an object to escape any sub-values for use in HTML.
*/
class OutputEscaperProxyObject extends ProxyObject
{
/**
* Get the proxy class.
*
* @return string The proxy class.
*/
protected static function popsProxyClass()
{
return __NAMESPACE__ . '\OutputEscaperProxy';
}
}
namespace OutputEscaper;
use Eloquent\Pops\ProxyPrimitive;
/**
* Wraps a primitive to escape its value for use in HTML.
*/
class OutputEscaperProxyPrimitive extends ProxyPrimitive
{
/**
* Get the HTML-escaped version of this primitive.
*
* @return string The HTML-secaped version of this primitive.
*/
public function __toString()
{
return htmlspecialchars(
strval($this->popsValue()),
ENT_QUOTES,
'UTF-8'
);
}
}
use OutputEscaper\OutputEscaperProxy;
use Eloquent\Pops\Safe\SafeProxy;
$list = new ArrayIterator(
array(
'foo',
'bar',
'<script>alert(document.cookie);</script>',
SafeProxy::proxy('<em>ooh...</em>'),
)
);
$proxy = OutputEscaperProxy::proxy($list, true);
echo "<ul>\n";
foreach ($proxy as $item) {
printf("<li>%s</li>\n", $item);
}
echo "</ul>\n";
class Confusion
{
public function butWho(&$wasPhone)
{
$wasPhone = 'Hello? Yes this is dog.';
}
}
use Eloquent\Pops\Proxy;
$proxy = Proxy::proxy(new Confusion);
$wasPhone = null;
$arguments = array(&$wasPhone);
$proxy->popsCall('butWho', $arguments);
echo $wasPhone; // outputs 'Hello? Yes this is dog.'
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.