Amigo: te lo hice con expresiones regulares (no una sino varias para bajarle a la complejidad de resolucion) pero
te desaconsejo fuertemente el uso de expresiones regulares para parsear tags..... hay muchas variantes que ni siquiera estas considerando:
- Comillas simples o dobles
- El orden de los tribitos
- Cantidad de espacios entre atributos
- Otros atributos que puedan aparecer y tu no te los esperas o con otros valores
- Etc....etc
Usa SimpleXML y lee tu HTML como DOM y trabajalo asi:
Código PHP:
<?php
$html = <<<HTML
<html>
<head></head>
<body>
<h1>Probando SimpleXML</h1>
<input name="data[Hiring][name]" type="text" maxlength="255" value="525" id="HiringName" class="alguna" />
</body>
HTML;
$doc = new DOMDocument();
$doc->strictErrorChecking = FALSE;
$doc->loadHTML($html);
$doc = simplexml_import_dom($doc);
$result = $doc->xpath('//input[@name="data[Hiring][name]"]');
var_dump($result);
Logicamente es un inicio.....ni siquiera se si te interprete complemente... pero yo empezaria por ahi... ahora que si me dices que si lo vas a buscar por id="HiringName" (o sea que hay uno solo de esos INPUT en todo el HTML) o por name="data[Hiring][name] o algun detalle mas te ayudo a obtener el VALUE
Sin embargo... para que no digas que es un "escape" ...te doy la
solucion con REGEX que desconsejo ***
Código PHP:
<?php
$html = <<<HTML
<html>
<head></head>
<body>
<h1>Probando REGEX</h1>
<INPUT name="data[Hiring][name]" type="text" maxlength="255" value="525" id="HiringName" class="alguna" />
<input name="otra_cosa" style="" >
</body>
HTML;
$value = null;
$patt = '/<input[^>]*(?:\/)?>/i';
preg_match_all($patt,$html,$array_resul);
if (!empty($array_resul)){
$inputs = $array_resul[0];
// deberian ignorarse espacios
$patt = '/id="HiringName"/i';
foreach ($inputs as $input)
{
preg_match($patt,$input,$arr);
if (!empty($arr)){
// ahora busco el VALUE
$patt = '/value="(.*?)"/i';
preg_match($patt,$input,$arr);
if (!empty($arr)){
$value = $arr[1];
}
}
}
}
echo $value; // 525
PD: tu puedes lograr que te funcione HOY con regex pero no puedes garantizar que con otros datos funcione mañana por la gran complejidad y variabilidad de los tags